-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathtemplates.go
64 lines (55 loc) · 1.66 KB
/
templates.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
package adminapi
import (
"context"
pb "github.com/ludusrusso/kannon/proto/kannon/admin/apiv1"
)
func (s *adminAPIService) CreateTemplate(ctx context.Context, req *pb.CreateTemplateReq) (*pb.CreateTemplateRes, error) {
res, err := s.tm.CreateTemplate(ctx, req.Html, req.Domain, req.Title)
if err != nil {
return nil, err
}
return &pb.CreateTemplateRes{
Template: res.Pb(),
}, nil
}
func (s *adminAPIService) UpdateTemplate(ctx context.Context, req *pb.UpdateTemplateReq) (*pb.UpdateTemplateRes, error) {
res, err := s.tm.UpdateTemplate(ctx, req.TemplateId, req.Html, req.Title)
if err != nil {
return nil, err
}
return &pb.UpdateTemplateRes{
Template: res.Pb(),
}, nil
}
func (s *adminAPIService) DeleteTemplate(ctx context.Context, req *pb.DeleteTemplateReq) (*pb.DeleteTemplateRes, error) {
res, err := s.tm.DeleteTemplate(ctx, req.TemplateId)
if err != nil {
return nil, err
}
return &pb.DeleteTemplateRes{
Template: res.Pb(),
}, nil
}
func (s *adminAPIService) GetTemplate(ctx context.Context, req *pb.GetTemplateReq) (*pb.GetTemplateRes, error) {
res, err := s.tm.GetTemplate(ctx, req.TemplateId)
if err != nil {
return nil, err
}
return &pb.GetTemplateRes{
Template: res.Pb(),
}, nil
}
func (s *adminAPIService) GetTemplates(ctx context.Context, req *pb.GetTemplatesReq) (*pb.GetTemplatesRes, error) {
res, total, err := s.tm.GetTemplates(ctx, req.Domain, uint(req.Skip), uint(req.Take))
if err != nil {
return nil, err
}
pbTemplates := make([]*pb.Template, 0, len(res))
for _, t := range res {
pbTemplates = append(pbTemplates, t.Pb())
}
return &pb.GetTemplatesRes{
Templates: pbTemplates,
Total: uint32(total),
}, nil
}