github.com/edwarnicke/govpp@v0.0.0-20230130211138-14ef5d20b1d0/binapi/vxlan_gbp/vxlan_gbp_rpc.ba.go (about)

     1  // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
     2  
     3  package vxlan_gbp
     4  
     5  import (
     6  	"context"
     7  	"fmt"
     8  	"io"
     9  
    10  	api "git.fd.io/govpp.git/api"
    11  	memclnt "github.com/edwarnicke/govpp/binapi/memclnt"
    12  )
    13  
    14  // RPCService defines RPC service vxlan_gbp.
    15  type RPCService interface {
    16  	SwInterfaceSetVxlanGbpBypass(ctx context.Context, in *SwInterfaceSetVxlanGbpBypass) (*SwInterfaceSetVxlanGbpBypassReply, error)
    17  	VxlanGbpTunnelAddDel(ctx context.Context, in *VxlanGbpTunnelAddDel) (*VxlanGbpTunnelAddDelReply, error)
    18  	VxlanGbpTunnelDump(ctx context.Context, in *VxlanGbpTunnelDump) (RPCService_VxlanGbpTunnelDumpClient, error)
    19  }
    20  
    21  type serviceClient struct {
    22  	conn api.Connection
    23  }
    24  
    25  func NewServiceClient(conn api.Connection) RPCService {
    26  	return &serviceClient{conn}
    27  }
    28  
    29  func (c *serviceClient) SwInterfaceSetVxlanGbpBypass(ctx context.Context, in *SwInterfaceSetVxlanGbpBypass) (*SwInterfaceSetVxlanGbpBypassReply, error) {
    30  	out := new(SwInterfaceSetVxlanGbpBypassReply)
    31  	err := c.conn.Invoke(ctx, in, out)
    32  	if err != nil {
    33  		return nil, err
    34  	}
    35  	return out, api.RetvalToVPPApiError(out.Retval)
    36  }
    37  
    38  func (c *serviceClient) VxlanGbpTunnelAddDel(ctx context.Context, in *VxlanGbpTunnelAddDel) (*VxlanGbpTunnelAddDelReply, error) {
    39  	out := new(VxlanGbpTunnelAddDelReply)
    40  	err := c.conn.Invoke(ctx, in, out)
    41  	if err != nil {
    42  		return nil, err
    43  	}
    44  	return out, api.RetvalToVPPApiError(out.Retval)
    45  }
    46  
    47  func (c *serviceClient) VxlanGbpTunnelDump(ctx context.Context, in *VxlanGbpTunnelDump) (RPCService_VxlanGbpTunnelDumpClient, error) {
    48  	stream, err := c.conn.NewStream(ctx)
    49  	if err != nil {
    50  		return nil, err
    51  	}
    52  	x := &serviceClient_VxlanGbpTunnelDumpClient{stream}
    53  	if err := x.Stream.SendMsg(in); err != nil {
    54  		return nil, err
    55  	}
    56  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
    57  		return nil, err
    58  	}
    59  	return x, nil
    60  }
    61  
    62  type RPCService_VxlanGbpTunnelDumpClient interface {
    63  	Recv() (*VxlanGbpTunnelDetails, error)
    64  	api.Stream
    65  }
    66  
    67  type serviceClient_VxlanGbpTunnelDumpClient struct {
    68  	api.Stream
    69  }
    70  
    71  func (c *serviceClient_VxlanGbpTunnelDumpClient) Recv() (*VxlanGbpTunnelDetails, error) {
    72  	msg, err := c.Stream.RecvMsg()
    73  	if err != nil {
    74  		return nil, err
    75  	}
    76  	switch m := msg.(type) {
    77  	case *VxlanGbpTunnelDetails:
    78  		return m, nil
    79  	case *memclnt.ControlPingReply:
    80  		err = c.Stream.Close()
    81  		if err != nil {
    82  			return nil, err
    83  		}
    84  		return nil, io.EOF
    85  	default:
    86  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
    87  	}
    88  }