github.com/networkservicemesh/govpp@v0.0.0-20240328101142-8a444680fbba/binapi/svs/svs_rpc.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 3 package svs 4 5 import ( 6 "context" 7 "fmt" 8 "io" 9 10 memclnt "github.com/networkservicemesh/govpp/binapi/memclnt" 11 api "go.fd.io/govpp/api" 12 ) 13 14 // RPCService defines RPC service svs. 15 type RPCService interface { 16 SvsDump(ctx context.Context, in *SvsDump) (RPCService_SvsDumpClient, error) 17 SvsEnableDisable(ctx context.Context, in *SvsEnableDisable) (*SvsEnableDisableReply, error) 18 SvsPluginGetVersion(ctx context.Context, in *SvsPluginGetVersion) (*SvsPluginGetVersionReply, error) 19 SvsRouteAddDel(ctx context.Context, in *SvsRouteAddDel) (*SvsRouteAddDelReply, error) 20 SvsTableAddDel(ctx context.Context, in *SvsTableAddDel) (*SvsTableAddDelReply, 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) SvsDump(ctx context.Context, in *SvsDump) (RPCService_SvsDumpClient, error) { 32 stream, err := c.conn.NewStream(ctx) 33 if err != nil { 34 return nil, err 35 } 36 x := &serviceClient_SvsDumpClient{stream} 37 if err := x.Stream.SendMsg(in); err != nil { 38 return nil, err 39 } 40 if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil { 41 return nil, err 42 } 43 return x, nil 44 } 45 46 type RPCService_SvsDumpClient interface { 47 Recv() (*SvsDetails, error) 48 api.Stream 49 } 50 51 type serviceClient_SvsDumpClient struct { 52 api.Stream 53 } 54 55 func (c *serviceClient_SvsDumpClient) Recv() (*SvsDetails, error) { 56 msg, err := c.Stream.RecvMsg() 57 if err != nil { 58 return nil, err 59 } 60 switch m := msg.(type) { 61 case *SvsDetails: 62 return m, nil 63 case *memclnt.ControlPingReply: 64 err = c.Stream.Close() 65 if err != nil { 66 return nil, err 67 } 68 return nil, io.EOF 69 default: 70 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 71 } 72 } 73 74 func (c *serviceClient) SvsEnableDisable(ctx context.Context, in *SvsEnableDisable) (*SvsEnableDisableReply, error) { 75 out := new(SvsEnableDisableReply) 76 err := c.conn.Invoke(ctx, in, out) 77 if err != nil { 78 return nil, err 79 } 80 return out, api.RetvalToVPPApiError(out.Retval) 81 } 82 83 func (c *serviceClient) SvsPluginGetVersion(ctx context.Context, in *SvsPluginGetVersion) (*SvsPluginGetVersionReply, error) { 84 out := new(SvsPluginGetVersionReply) 85 err := c.conn.Invoke(ctx, in, out) 86 if err != nil { 87 return nil, err 88 } 89 return out, nil 90 } 91 92 func (c *serviceClient) SvsRouteAddDel(ctx context.Context, in *SvsRouteAddDel) (*SvsRouteAddDelReply, error) { 93 out := new(SvsRouteAddDelReply) 94 err := c.conn.Invoke(ctx, in, out) 95 if err != nil { 96 return nil, err 97 } 98 return out, api.RetvalToVPPApiError(out.Retval) 99 } 100 101 func (c *serviceClient) SvsTableAddDel(ctx context.Context, in *SvsTableAddDel) (*SvsTableAddDelReply, error) { 102 out := new(SvsTableAddDelReply) 103 err := c.conn.Invoke(ctx, in, out) 104 if err != nil { 105 return nil, err 106 } 107 return out, api.RetvalToVPPApiError(out.Retval) 108 }