task-processor/internal/network/recieve.go
2025-10-03 19:17:01 +03:00

38 lines
985 B
Go

package network
import (
"context"
log "github.com/sirupsen/logrus"
"google.golang.org/protobuf/types/known/emptypb"
"io"
"task-processor/internal/shared"
pb "task-processor/proto/taskProcessor"
)
func (n *Network) RequestTasks(ctx context.Context, client pb.TaskProcessorClient) []shared.TaskResponse {
var tasksList []shared.TaskResponse
stream, err := client.RequestTask(ctx, &emptypb.Empty{})
if err != nil {
log.WithField("err", err).Error("Error calling Request Tasks")
return nil
}
for {
response, err := stream.Recv()
if err == io.EOF {
break
}
if err != nil {
log.WithField("err", err).Error("Error receiving response")
return nil
}
tasksList = append(tasksList, shared.TaskResponse{
MerchUuid: response.MerchUuid,
OriginSurugayaLink: response.OriginSurugayaLink,
OriginMandarakeLink: response.OriginMandarakeLink,
})
log.WithField("entry added", response.MerchUuid).Debug("gRPC Receive")
}
return tasksList
}