Files
query-orchestration/api/grpc/controllers/name.go
T
Michael McGuinness b1f8ac453b Merged in feature/baseTemplate (pull request #1)
feat!: base template

* first bit of templating

* codeowners

* linuxbased

* restart

* baseline project

* add grpc api and basic integration test

* startqueue

* queueMsg

* splitscripts

* migrations

* queueintegrationtest

* gateway
2024-12-06 14:38:42 +00:00

41 lines
802 B
Go

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
}