go.ligato.io/vpp-agent/v3@v3.5.0/plugins/vpp/binapi/vpp2106/vmxnet3/vmxnet3_rpc.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 3 package vmxnet3 4 5 import ( 6 "context" 7 "fmt" 8 "io" 9 10 api "go.fd.io/govpp/api" 11 vpe "go.ligato.io/vpp-agent/v3/plugins/vpp/binapi/vpp2106/vpe" 12 ) 13 14 // RPCService defines RPC service vmxnet3. 15 type RPCService interface { 16 SwVmxnet3InterfaceDump(ctx context.Context, in *SwVmxnet3InterfaceDump) (RPCService_SwVmxnet3InterfaceDumpClient, error) 17 Vmxnet3Create(ctx context.Context, in *Vmxnet3Create) (*Vmxnet3CreateReply, error) 18 Vmxnet3Delete(ctx context.Context, in *Vmxnet3Delete) (*Vmxnet3DeleteReply, error) 19 Vmxnet3Dump(ctx context.Context, in *Vmxnet3Dump) (RPCService_Vmxnet3DumpClient, error) 20 } 21 22 type serviceClient struct { 23 conn api.Connection 24 } 25 26 func NewServiceClient(conn api.Connection) RPCService { 27 return &serviceClient{conn} 28 } 29 30 func (c *serviceClient) SwVmxnet3InterfaceDump(ctx context.Context, in *SwVmxnet3InterfaceDump) (RPCService_SwVmxnet3InterfaceDumpClient, error) { 31 stream, err := c.conn.NewStream(ctx) 32 if err != nil { 33 return nil, err 34 } 35 x := &serviceClient_SwVmxnet3InterfaceDumpClient{stream} 36 if err := x.Stream.SendMsg(in); err != nil { 37 return nil, err 38 } 39 if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil { 40 return nil, err 41 } 42 return x, nil 43 } 44 45 type RPCService_SwVmxnet3InterfaceDumpClient interface { 46 Recv() (*SwVmxnet3InterfaceDetails, error) 47 api.Stream 48 } 49 50 type serviceClient_SwVmxnet3InterfaceDumpClient struct { 51 api.Stream 52 } 53 54 func (c *serviceClient_SwVmxnet3InterfaceDumpClient) Recv() (*SwVmxnet3InterfaceDetails, error) { 55 msg, err := c.Stream.RecvMsg() 56 if err != nil { 57 return nil, err 58 } 59 switch m := msg.(type) { 60 case *SwVmxnet3InterfaceDetails: 61 return m, nil 62 case *vpe.ControlPingReply: 63 err = c.Stream.Close() 64 if err != nil { 65 return nil, err 66 } 67 return nil, io.EOF 68 default: 69 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 70 } 71 } 72 73 func (c *serviceClient) Vmxnet3Create(ctx context.Context, in *Vmxnet3Create) (*Vmxnet3CreateReply, error) { 74 out := new(Vmxnet3CreateReply) 75 err := c.conn.Invoke(ctx, in, out) 76 if err != nil { 77 return nil, err 78 } 79 return out, api.RetvalToVPPApiError(out.Retval) 80 } 81 82 func (c *serviceClient) Vmxnet3Delete(ctx context.Context, in *Vmxnet3Delete) (*Vmxnet3DeleteReply, error) { 83 out := new(Vmxnet3DeleteReply) 84 err := c.conn.Invoke(ctx, in, out) 85 if err != nil { 86 return nil, err 87 } 88 return out, api.RetvalToVPPApiError(out.Retval) 89 } 90 91 func (c *serviceClient) Vmxnet3Dump(ctx context.Context, in *Vmxnet3Dump) (RPCService_Vmxnet3DumpClient, error) { 92 stream, err := c.conn.NewStream(ctx) 93 if err != nil { 94 return nil, err 95 } 96 x := &serviceClient_Vmxnet3DumpClient{stream} 97 if err := x.Stream.SendMsg(in); err != nil { 98 return nil, err 99 } 100 if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil { 101 return nil, err 102 } 103 return x, nil 104 } 105 106 type RPCService_Vmxnet3DumpClient interface { 107 Recv() (*Vmxnet3Details, error) 108 api.Stream 109 } 110 111 type serviceClient_Vmxnet3DumpClient struct { 112 api.Stream 113 } 114 115 func (c *serviceClient_Vmxnet3DumpClient) Recv() (*Vmxnet3Details, error) { 116 msg, err := c.Stream.RecvMsg() 117 if err != nil { 118 return nil, err 119 } 120 switch m := msg.(type) { 121 case *Vmxnet3Details: 122 return m, nil 123 case *vpe.ControlPingReply: 124 err = c.Stream.Close() 125 if err != nil { 126 return nil, err 127 } 128 return nil, io.EOF 129 default: 130 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 131 } 132 }