/
adminserver_dec.go
86 lines (77 loc) · 2.38 KB
/
adminserver_dec.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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
// Code generated by svcdec; DO NOT EDIT
package api
import (
"context"
proto "github.com/golang/protobuf/proto"
empty "github.com/golang/protobuf/ptypes/empty"
)
type DecoratedAdmin struct {
// Service is the service to decorate.
Service AdminServer
// Prelude is called for each method before forwarding the call to Service.
// If Prelude returns an error, then the call is skipped and the error is
// processed via the Postlude (if one is defined), or it is returned directly.
Prelude func(c context.Context, methodName string, req proto.Message) (context.Context, error)
// Postlude is called for each method after Service has processed the call, or
// after the Prelude has returned an error. This takes the the Service's
// response proto (which may be nil) and/or any error. The decorated
// service will return the response (possibly mutated) and error that Postlude
// returns.
Postlude func(c context.Context, methodName string, rsp proto.Message, err error) error
}
func (s *DecoratedAdmin) LaunchJob(c context.Context, req *JobConfig) (rsp *JobID, err error) {
var newCtx context.Context
if s.Prelude != nil {
newCtx, err = s.Prelude(c, "LaunchJob", req)
}
if err == nil {
c = newCtx
rsp, err = s.Service.LaunchJob(c, req)
}
if s.Postlude != nil {
err = s.Postlude(c, "LaunchJob", rsp, err)
}
return
}
func (s *DecoratedAdmin) AbortJob(c context.Context, req *JobID) (rsp *empty.Empty, err error) {
var newCtx context.Context
if s.Prelude != nil {
newCtx, err = s.Prelude(c, "AbortJob", req)
}
if err == nil {
c = newCtx
rsp, err = s.Service.AbortJob(c, req)
}
if s.Postlude != nil {
err = s.Postlude(c, "AbortJob", rsp, err)
}
return
}
func (s *DecoratedAdmin) GetJobState(c context.Context, req *JobID) (rsp *JobState, err error) {
var newCtx context.Context
if s.Prelude != nil {
newCtx, err = s.Prelude(c, "GetJobState", req)
}
if err == nil {
c = newCtx
rsp, err = s.Service.GetJobState(c, req)
}
if s.Postlude != nil {
err = s.Postlude(c, "GetJobState", rsp, err)
}
return
}
func (s *DecoratedAdmin) FixMarkedTags(c context.Context, req *JobID) (rsp *TagFixReport, err error) {
var newCtx context.Context
if s.Prelude != nil {
newCtx, err = s.Prelude(c, "FixMarkedTags", req)
}
if err == nil {
c = newCtx
rsp, err = s.Service.FixMarkedTags(c, req)
}
if s.Postlude != nil {
err = s.Postlude(c, "FixMarkedTags", rsp, err)
}
return
}