Improve doc & fix import ordering
[govpp.git] / binapi / svs / svs_rpc.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2
3 package svs
4
5 import (
6         "context"
7         "fmt"
8         "io"
9
10         api "git.fd.io/govpp.git/api"
11         vpe "git.fd.io/govpp.git/binapi/vpe"
12 )
13
14 // RPCService defines RPC service  svs.
15 type RPCService interface {
16         SvsDump(ctx context.Context, in *SvsDump) (RPCService_SvsDumpClient, error)
17         SvsEnableDisable(ctx context.Context, in *SvsEnableDisable) (*SvsEnableDisableReply, error)
18         SvsPluginGetVersion(ctx context.Context, in *SvsPluginGetVersion) (*SvsPluginGetVersionReply, error)
19         SvsRouteAddDel(ctx context.Context, in *SvsRouteAddDel) (*SvsRouteAddDelReply, error)
20         SvsTableAddDel(ctx context.Context, in *SvsTableAddDel) (*SvsTableAddDelReply, error)
21 }
22
23 type serviceClient struct {
24         conn api.Connection
25 }
26
27 func NewServiceClient(conn api.Connection) RPCService {
28         return &serviceClient{conn}
29 }
30
31 func (c *serviceClient) SvsDump(ctx context.Context, in *SvsDump) (RPCService_SvsDumpClient, error) {
32         stream, err := c.conn.NewStream(ctx)
33         if err != nil {
34                 return nil, err
35         }
36         x := &serviceClient_SvsDumpClient{stream}
37         if err := x.Stream.SendMsg(in); err != nil {
38                 return nil, err
39         }
40         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
41                 return nil, err
42         }
43         return x, nil
44 }
45
46 type RPCService_SvsDumpClient interface {
47         Recv() (*SvsDetails, error)
48         api.Stream
49 }
50
51 type serviceClient_SvsDumpClient struct {
52         api.Stream
53 }
54
55 func (c *serviceClient_SvsDumpClient) Recv() (*SvsDetails, error) {
56         msg, err := c.Stream.RecvMsg()
57         if err != nil {
58                 return nil, err
59         }
60         switch m := msg.(type) {
61         case *SvsDetails:
62                 return m, nil
63         case *vpe.ControlPingReply:
64                 return nil, io.EOF
65         default:
66                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
67         }
68 }
69
70 func (c *serviceClient) SvsEnableDisable(ctx context.Context, in *SvsEnableDisable) (*SvsEnableDisableReply, error) {
71         out := new(SvsEnableDisableReply)
72         err := c.conn.Invoke(ctx, in, out)
73         if err != nil {
74                 return nil, err
75         }
76         return out, nil
77 }
78
79 func (c *serviceClient) SvsPluginGetVersion(ctx context.Context, in *SvsPluginGetVersion) (*SvsPluginGetVersionReply, error) {
80         out := new(SvsPluginGetVersionReply)
81         err := c.conn.Invoke(ctx, in, out)
82         if err != nil {
83                 return nil, err
84         }
85         return out, nil
86 }
87
88 func (c *serviceClient) SvsRouteAddDel(ctx context.Context, in *SvsRouteAddDel) (*SvsRouteAddDelReply, error) {
89         out := new(SvsRouteAddDelReply)
90         err := c.conn.Invoke(ctx, in, out)
91         if err != nil {
92                 return nil, err
93         }
94         return out, nil
95 }
96
97 func (c *serviceClient) SvsTableAddDel(ctx context.Context, in *SvsTableAddDel) (*SvsTableAddDelReply, error) {
98         out := new(SvsTableAddDelReply)
99         err := c.conn.Invoke(ctx, in, out)
100         if err != nil {
101                 return nil, err
102         }
103         return out, nil
104 }