Introduce Stream - experimental API for low-level access to VPP API
[govpp.git] / examples / binapi / mactime / mactime_rpc.ba.go
1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
2
3 package mactime
4
5 import (
6         "context"
7         "io"
8
9         api "git.fd.io/govpp.git/api"
10 )
11
12 // RPCService represents RPC service API for mactime module.
13 type RPCService interface {
14         DumpMactime(ctx context.Context, in *MactimeDump) (RPCService_DumpMactimeClient, error)
15         MactimeAddDelRange(ctx context.Context, in *MactimeAddDelRange) (*MactimeAddDelRangeReply, error)
16         MactimeEnableDisable(ctx context.Context, in *MactimeEnableDisable) (*MactimeEnableDisableReply, error)
17 }
18
19 type serviceClient struct {
20         ch api.Channel
21 }
22
23 func NewServiceClient(ch api.Channel) RPCService {
24         return &serviceClient{ch}
25 }
26
27 func (c *serviceClient) DumpMactime(ctx context.Context, in *MactimeDump) (RPCService_DumpMactimeClient, error) {
28         stream := c.ch.SendMultiRequest(in)
29         x := &serviceClient_DumpMactimeClient{stream}
30         return x, nil
31 }
32
33 type RPCService_DumpMactimeClient interface {
34         Recv() (*MactimeDetails, error)
35 }
36
37 type serviceClient_DumpMactimeClient struct {
38         api.MultiRequestCtx
39 }
40
41 func (c *serviceClient_DumpMactimeClient) Recv() (*MactimeDetails, error) {
42         m := new(MactimeDetails)
43         stop, err := c.MultiRequestCtx.ReceiveReply(m)
44         if err != nil {
45                 return nil, err
46         }
47         if stop {
48                 return nil, io.EOF
49         }
50         return m, nil
51 }
52
53 func (c *serviceClient) MactimeAddDelRange(ctx context.Context, in *MactimeAddDelRange) (*MactimeAddDelRangeReply, error) {
54         out := new(MactimeAddDelRangeReply)
55         err := c.ch.SendRequest(in).ReceiveReply(out)
56         if err != nil {
57                 return nil, err
58         }
59         return out, nil
60 }
61
62 func (c *serviceClient) MactimeEnableDisable(ctx context.Context, in *MactimeEnableDisable) (*MactimeEnableDisableReply, error) {
63         out := new(MactimeEnableDisableReply)
64         err := c.ch.SendRequest(in).ReceiveReply(out)
65         if err != nil {
66                 return nil, err
67         }
68         return out, nil
69 }
70
71 // Reference imports to suppress errors if they are not otherwise used.
72 var _ = api.RegisterMessage
73 var _ = context.Background
74 var _ = io.Copy