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