greeter.go 680 B

1234567891011121314151617181920212223242526272829
  1. package service
  2. import (
  3. "context"
  4. v1 "server/api/helloworld/v1"
  5. "server/internal/biz"
  6. )
  7. // GreeterService is a greeter service.
  8. type GreeterService struct {
  9. v1.UnimplementedGreeterServer
  10. uc *biz.GreeterUsecase
  11. }
  12. // NewGreeterService new a greeter service.
  13. func NewGreeterService(uc *biz.GreeterUsecase) *GreeterService {
  14. return &GreeterService{uc: uc}
  15. }
  16. // SayHello implements helloworld.GreeterServer.
  17. func (s *GreeterService) SayHello(ctx context.Context, in *v1.HelloRequest) (*v1.HelloReply, error) {
  18. g, err := s.uc.CreateGreeter(ctx, &biz.Greeter{Hello: in.Name})
  19. if err != nil {
  20. return nil, err
  21. }
  22. return &v1.HelloReply{Message: "Hello " + g.Hello}, nil
  23. }