77b9097f77e50c6d0b334700fbdbeaeab0dcc271
[govpp.git] / binapi / wireguard / wireguard_rpc.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2
3 package wireguard
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 wireguard.
15 type RPCService interface {
16         WireguardInterfaceCreate(ctx context.Context, in *WireguardInterfaceCreate) (*WireguardInterfaceCreateReply, error)
17         WireguardInterfaceDelete(ctx context.Context, in *WireguardInterfaceDelete) (*WireguardInterfaceDeleteReply, error)
18         WireguardInterfaceDump(ctx context.Context, in *WireguardInterfaceDump) (RPCService_WireguardInterfaceDumpClient, error)
19         WireguardPeerAdd(ctx context.Context, in *WireguardPeerAdd) (*WireguardPeerAddReply, error)
20         WireguardPeerRemove(ctx context.Context, in *WireguardPeerRemove) (*WireguardPeerRemoveReply, error)
21         WireguardPeersDump(ctx context.Context, in *WireguardPeersDump) (RPCService_WireguardPeersDumpClient, error)
22 }
23
24 type serviceClient struct {
25         conn api.Connection
26 }
27
28 func NewServiceClient(conn api.Connection) RPCService {
29         return &serviceClient{conn}
30 }
31
32 func (c *serviceClient) WireguardInterfaceCreate(ctx context.Context, in *WireguardInterfaceCreate) (*WireguardInterfaceCreateReply, error) {
33         out := new(WireguardInterfaceCreateReply)
34         err := c.conn.Invoke(ctx, in, out)
35         if err != nil {
36                 return nil, err
37         }
38         return out, api.RetvalToVPPApiError(out.Retval)
39 }
40
41 func (c *serviceClient) WireguardInterfaceDelete(ctx context.Context, in *WireguardInterfaceDelete) (*WireguardInterfaceDeleteReply, error) {
42         out := new(WireguardInterfaceDeleteReply)
43         err := c.conn.Invoke(ctx, in, out)
44         if err != nil {
45                 return nil, err
46         }
47         return out, api.RetvalToVPPApiError(out.Retval)
48 }
49
50 func (c *serviceClient) WireguardInterfaceDump(ctx context.Context, in *WireguardInterfaceDump) (RPCService_WireguardInterfaceDumpClient, error) {
51         stream, err := c.conn.NewStream(ctx)
52         if err != nil {
53                 return nil, err
54         }
55         x := &serviceClient_WireguardInterfaceDumpClient{stream}
56         if err := x.Stream.SendMsg(in); err != nil {
57                 return nil, err
58         }
59         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
60                 return nil, err
61         }
62         return x, nil
63 }
64
65 type RPCService_WireguardInterfaceDumpClient interface {
66         Recv() (*WireguardInterfaceDetails, error)
67         api.Stream
68 }
69
70 type serviceClient_WireguardInterfaceDumpClient struct {
71         api.Stream
72 }
73
74 func (c *serviceClient_WireguardInterfaceDumpClient) Recv() (*WireguardInterfaceDetails, error) {
75         msg, err := c.Stream.RecvMsg()
76         if err != nil {
77                 return nil, err
78         }
79         switch m := msg.(type) {
80         case *WireguardInterfaceDetails:
81                 return m, nil
82         case *vpe.ControlPingReply:
83                 return nil, io.EOF
84         default:
85                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
86         }
87 }
88
89 func (c *serviceClient) WireguardPeerAdd(ctx context.Context, in *WireguardPeerAdd) (*WireguardPeerAddReply, error) {
90         out := new(WireguardPeerAddReply)
91         err := c.conn.Invoke(ctx, in, out)
92         if err != nil {
93                 return nil, err
94         }
95         return out, api.RetvalToVPPApiError(out.Retval)
96 }
97
98 func (c *serviceClient) WireguardPeerRemove(ctx context.Context, in *WireguardPeerRemove) (*WireguardPeerRemoveReply, error) {
99         out := new(WireguardPeerRemoveReply)
100         err := c.conn.Invoke(ctx, in, out)
101         if err != nil {
102                 return nil, err
103         }
104         return out, api.RetvalToVPPApiError(out.Retval)
105 }
106
107 func (c *serviceClient) WireguardPeersDump(ctx context.Context, in *WireguardPeersDump) (RPCService_WireguardPeersDumpClient, error) {
108         stream, err := c.conn.NewStream(ctx)
109         if err != nil {
110                 return nil, err
111         }
112         x := &serviceClient_WireguardPeersDumpClient{stream}
113         if err := x.Stream.SendMsg(in); err != nil {
114                 return nil, err
115         }
116         if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil {
117                 return nil, err
118         }
119         return x, nil
120 }
121
122 type RPCService_WireguardPeersDumpClient interface {
123         Recv() (*WireguardPeersDetails, error)
124         api.Stream
125 }
126
127 type serviceClient_WireguardPeersDumpClient struct {
128         api.Stream
129 }
130
131 func (c *serviceClient_WireguardPeersDumpClient) Recv() (*WireguardPeersDetails, error) {
132         msg, err := c.Stream.RecvMsg()
133         if err != nil {
134                 return nil, err
135         }
136         switch m := msg.(type) {
137         case *WireguardPeersDetails:
138                 return m, nil
139         case *vpe.ControlPingReply:
140                 return nil, io.EOF
141         default:
142                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
143         }
144 }