958bc501862a996b340a780ab5e9032a8042b722
[govpp.git] / binapi / pnat / pnat_rpc.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2
3 package pnat
4
5 import (
6         "context"
7         "fmt"
8         "io"
9
10         api "git.fd.io/govpp.git/api"
11 )
12
13 // RPCService defines RPC service pnat.
14 type RPCService interface {
15         PnatBindingAdd(ctx context.Context, in *PnatBindingAdd) (*PnatBindingAddReply, error)
16         PnatBindingAttach(ctx context.Context, in *PnatBindingAttach) (*PnatBindingAttachReply, error)
17         PnatBindingDel(ctx context.Context, in *PnatBindingDel) (*PnatBindingDelReply, error)
18         PnatBindingDetach(ctx context.Context, in *PnatBindingDetach) (*PnatBindingDetachReply, error)
19         PnatBindingsGet(ctx context.Context, in *PnatBindingsGet) (RPCService_PnatBindingsGetClient, error)
20         PnatInterfacesGet(ctx context.Context, in *PnatInterfacesGet) (RPCService_PnatInterfacesGetClient, 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) PnatBindingAdd(ctx context.Context, in *PnatBindingAdd) (*PnatBindingAddReply, error) {
32         out := new(PnatBindingAddReply)
33         err := c.conn.Invoke(ctx, in, out)
34         if err != nil {
35                 return nil, err
36         }
37         return out, api.RetvalToVPPApiError(out.Retval)
38 }
39
40 func (c *serviceClient) PnatBindingAttach(ctx context.Context, in *PnatBindingAttach) (*PnatBindingAttachReply, error) {
41         out := new(PnatBindingAttachReply)
42         err := c.conn.Invoke(ctx, in, out)
43         if err != nil {
44                 return nil, err
45         }
46         return out, api.RetvalToVPPApiError(out.Retval)
47 }
48
49 func (c *serviceClient) PnatBindingDel(ctx context.Context, in *PnatBindingDel) (*PnatBindingDelReply, error) {
50         out := new(PnatBindingDelReply)
51         err := c.conn.Invoke(ctx, in, out)
52         if err != nil {
53                 return nil, err
54         }
55         return out, api.RetvalToVPPApiError(out.Retval)
56 }
57
58 func (c *serviceClient) PnatBindingDetach(ctx context.Context, in *PnatBindingDetach) (*PnatBindingDetachReply, error) {
59         out := new(PnatBindingDetachReply)
60         err := c.conn.Invoke(ctx, in, out)
61         if err != nil {
62                 return nil, err
63         }
64         return out, api.RetvalToVPPApiError(out.Retval)
65 }
66
67 func (c *serviceClient) PnatBindingsGet(ctx context.Context, in *PnatBindingsGet) (RPCService_PnatBindingsGetClient, error) {
68         stream, err := c.conn.NewStream(ctx)
69         if err != nil {
70                 return nil, err
71         }
72         x := &serviceClient_PnatBindingsGetClient{stream}
73         if err := x.Stream.SendMsg(in); err != nil {
74                 return nil, err
75         }
76         return x, nil
77 }
78
79 type RPCService_PnatBindingsGetClient interface {
80         Recv() (*PnatBindingsDetails, error)
81         api.Stream
82 }
83
84 type serviceClient_PnatBindingsGetClient struct {
85         api.Stream
86 }
87
88 func (c *serviceClient_PnatBindingsGetClient) Recv() (*PnatBindingsDetails, error) {
89         msg, err := c.Stream.RecvMsg()
90         if err != nil {
91                 return nil, err
92         }
93         switch m := msg.(type) {
94         case *PnatBindingsDetails:
95                 return m, nil
96         case *PnatBindingsGetReply:
97                 err = c.Stream.Close()
98                 if err != nil {
99                         return nil, err
100                 }
101                 return nil, io.EOF
102         default:
103                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
104         }
105 }
106
107 func (c *serviceClient) PnatInterfacesGet(ctx context.Context, in *PnatInterfacesGet) (RPCService_PnatInterfacesGetClient, error) {
108         stream, err := c.conn.NewStream(ctx)
109         if err != nil {
110                 return nil, err
111         }
112         x := &serviceClient_PnatInterfacesGetClient{stream}
113         if err := x.Stream.SendMsg(in); err != nil {
114                 return nil, err
115         }
116         return x, nil
117 }
118
119 type RPCService_PnatInterfacesGetClient interface {
120         Recv() (*PnatInterfacesDetails, error)
121         api.Stream
122 }
123
124 type serviceClient_PnatInterfacesGetClient struct {
125         api.Stream
126 }
127
128 func (c *serviceClient_PnatInterfacesGetClient) Recv() (*PnatInterfacesDetails, error) {
129         msg, err := c.Stream.RecvMsg()
130         if err != nil {
131                 return nil, err
132         }
133         switch m := msg.(type) {
134         case *PnatInterfacesDetails:
135                 return m, nil
136         case *PnatInterfacesGetReply:
137                 err = c.Stream.Close()
138                 if err != nil {
139                         return nil, err
140                 }
141                 return nil, io.EOF
142         default:
143                 return nil, fmt.Errorf("unexpected message: %T %v", m, m)
144         }
145 }