generated from VLADIMIR/template
40 lines
935 B
Go
40 lines
935 B
Go
package app
|
|
|
|
import (
|
|
"context"
|
|
"evening_detective_server/internal/services/users_service"
|
|
proto "evening_detective_server/proto"
|
|
)
|
|
|
|
type server struct {
|
|
proto.UnsafeEveningDetectiveServerServer
|
|
|
|
usersService *users_service.UsersService
|
|
}
|
|
|
|
func NewServer(
|
|
usersService *users_service.UsersService,
|
|
) proto.EveningDetectiveServerServer {
|
|
return &server{
|
|
usersService: usersService,
|
|
}
|
|
}
|
|
|
|
func (s *server) Ping(_ context.Context, _ *proto.PingReq) (*proto.PingRsp, error) {
|
|
return &proto.PingRsp{}, nil
|
|
}
|
|
|
|
func (s *server) Echo(_ context.Context, req *proto.EchoReq) (*proto.EchoRsp, error) {
|
|
return &proto.EchoRsp{Text: req.Text}, nil
|
|
}
|
|
|
|
func (s *server) Signup(ctx context.Context, signupReq *proto.SignupReq) (*proto.SignupRsp, error) {
|
|
err := s.usersService.AddUser(ctx, signupReq.Username, signupReq.Email)
|
|
if err != nil {
|
|
return &proto.SignupRsp{
|
|
Error: err.Error(),
|
|
}, nil
|
|
}
|
|
return &proto.SignupRsp{}, nil
|
|
}
|