package controllers import ( "context" "gotemplate/api/grpc/spec" "gotemplate/internal/name" ) type NameController struct { spec.UnimplementedNameServer name name.Service } func NewNameController(nameSvc name.Service) *NameController { return &NameController{ name: nameSvc, } } func (s *NameController) Add(ctx context.Context, req *spec.NameMessage) (*spec.NameMessage, error) { err := s.name.Add(ctx, req.GetName()) if err != nil { return &spec.NameMessage{}, err } return &spec.NameMessage{ Name: req.GetName(), }, nil } func (s *NameController) Get(ctx context.Context, req *spec.NameMessage) (*spec.NameMessage, error) { name, err := s.name.Get(ctx, req.GetName()) if err != nil { return &spec.NameMessage{}, err } return &spec.NameMessage{ Name: name, }, nil }