go.ligato.io/vpp-agent/v3@v3.5.0/plugins/vpp/binapi/vpp2101/gtpu/gtpu_rpc.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 3 package gtpu 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/vpp2101/vpe" 12 ) 13 14 // RPCService defines RPC service gtpu. 15 type RPCService interface { 16 GtpuAddDelTunnel(ctx context.Context, in *GtpuAddDelTunnel) (*GtpuAddDelTunnelReply, error) 17 GtpuOffloadRx(ctx context.Context, in *GtpuOffloadRx) (*GtpuOffloadRxReply, error) 18 GtpuTunnelDump(ctx context.Context, in *GtpuTunnelDump) (RPCService_GtpuTunnelDumpClient, error) 19 GtpuTunnelUpdateTteid(ctx context.Context, in *GtpuTunnelUpdateTteid) (*GtpuTunnelUpdateTteidReply, error) 20 SwInterfaceSetGtpuBypass(ctx context.Context, in *SwInterfaceSetGtpuBypass) (*SwInterfaceSetGtpuBypassReply, 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) GtpuAddDelTunnel(ctx context.Context, in *GtpuAddDelTunnel) (*GtpuAddDelTunnelReply, error) { 32 out := new(GtpuAddDelTunnelReply) 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) GtpuOffloadRx(ctx context.Context, in *GtpuOffloadRx) (*GtpuOffloadRxReply, error) { 41 out := new(GtpuOffloadRxReply) 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) GtpuTunnelDump(ctx context.Context, in *GtpuTunnelDump) (RPCService_GtpuTunnelDumpClient, error) { 50 stream, err := c.conn.NewStream(ctx) 51 if err != nil { 52 return nil, err 53 } 54 x := &serviceClient_GtpuTunnelDumpClient{stream} 55 if err := x.Stream.SendMsg(in); err != nil { 56 return nil, err 57 } 58 if err = x.Stream.SendMsg(&vpe.ControlPing{}); err != nil { 59 return nil, err 60 } 61 return x, nil 62 } 63 64 type RPCService_GtpuTunnelDumpClient interface { 65 Recv() (*GtpuTunnelDetails, error) 66 api.Stream 67 } 68 69 type serviceClient_GtpuTunnelDumpClient struct { 70 api.Stream 71 } 72 73 func (c *serviceClient_GtpuTunnelDumpClient) Recv() (*GtpuTunnelDetails, error) { 74 msg, err := c.Stream.RecvMsg() 75 if err != nil { 76 return nil, err 77 } 78 switch m := msg.(type) { 79 case *GtpuTunnelDetails: 80 return m, nil 81 case *vpe.ControlPingReply: 82 err = c.Stream.Close() 83 if err != nil { 84 return nil, err 85 } 86 return nil, io.EOF 87 default: 88 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 89 } 90 } 91 92 func (c *serviceClient) GtpuTunnelUpdateTteid(ctx context.Context, in *GtpuTunnelUpdateTteid) (*GtpuTunnelUpdateTteidReply, error) { 93 out := new(GtpuTunnelUpdateTteidReply) 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) SwInterfaceSetGtpuBypass(ctx context.Context, in *SwInterfaceSetGtpuBypass) (*SwInterfaceSetGtpuBypassReply, error) { 102 out := new(SwInterfaceSetGtpuBypassReply) 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 }