50 lines
1.7 KiB
Go
50 lines
1.7 KiB
Go
package grpc
|
|
|
|
import (
|
|
"context"
|
|
|
|
pb "datarush/pkg/api/task"
|
|
"google.golang.org/protobuf/types/known/emptypb"
|
|
)
|
|
|
|
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)
|
|
} |