Files
2025-12-19 21:04:12 +03:00

61 lines
1.8 KiB
Go

package grpc
import (
"context"
"google.golang.org/protobuf/types/known/emptypb"
pb "datarush/pkg/api/task"
)
type TaskService interface {
CreateTask(ctx context.Context, req *pb.Task) (*pb.Task, error)
GetTask(ctx context.Context, req *pb.GetTaskRequest) (*pb.Task, error)
EditTask(ctx context.Context, req *pb.Task) (*pb.Task, error)
DeleteTask(ctx context.Context, req *pb.DeleteTaskRequest) (*emptypb.Empty, error)
ListCompetitionTasks(
ctx context.Context,
req *pb.ListCompetitionTasksRequest,
) (*pb.ListCompetitionTasksResponse, error)
GetTaskAttachments(ctx context.Context, req *pb.GetTaskAttachmentsRequest) (*pb.GetTaskAttachmentsResponse, error)
}
type TaskHandler struct {
pb.UnimplementedTaskServiceServer
service TaskService
}
func NewTaskHandler(service TaskService) *TaskHandler {
return &TaskHandler{service: service}
}
func (h *TaskHandler) CreateTask(ctx context.Context, req *pb.Task) (*pb.Task, error) {
return h.service.CreateTask(ctx, req)
}
func (h *TaskHandler) GetTask(ctx context.Context, req *pb.GetTaskRequest) (*pb.Task, error) {
return h.service.GetTask(ctx, req)
}
func (h *TaskHandler) EditTask(ctx context.Context, req *pb.Task) (*pb.Task, error) {
return h.service.EditTask(ctx, req)
}
func (h *TaskHandler) DeleteTask(ctx context.Context, req *pb.DeleteTaskRequest) (*emptypb.Empty, error) {
return h.service.DeleteTask(ctx, req)
}
func (h *TaskHandler) ListCompetitionTasks(
ctx context.Context,
req *pb.ListCompetitionTasksRequest,
) (*pb.ListCompetitionTasksResponse, error) {
return h.service.ListCompetitionTasks(ctx, req)
}
func (h *TaskHandler) GetTaskAttachments(
ctx context.Context,
req *pb.GetTaskAttachmentsRequest,
) (*pb.GetTaskAttachmentsResponse, error) {
return h.service.GetTaskAttachments(ctx, req)
}