github.com/networkservicemesh/govpp@v0.0.0-20240328101142-8a444680fbba/binapi/policer/policer_rpc.ba.go (about)

     1  // Code generated by GoVPP's binapi-generator. DO NOT EDIT.
     2  
     3  package policer
     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 policer.
    15  type RPCService interface {
    16  	PolicerAdd(ctx context.Context, in *PolicerAdd) (*PolicerAddReply, error)
    17  	PolicerAddDel(ctx context.Context, in *PolicerAddDel) (*PolicerAddDelReply, error)
    18  	PolicerBind(ctx context.Context, in *PolicerBind) (*PolicerBindReply, error)
    19  	PolicerBindV2(ctx context.Context, in *PolicerBindV2) (*PolicerBindV2Reply, error)
    20  	PolicerDel(ctx context.Context, in *PolicerDel) (*PolicerDelReply, error)
    21  	PolicerDump(ctx context.Context, in *PolicerDump) (RPCService_PolicerDumpClient, error)
    22  	PolicerDumpV2(ctx context.Context, in *PolicerDumpV2) (RPCService_PolicerDumpV2Client, error)
    23  	PolicerInput(ctx context.Context, in *PolicerInput) (*PolicerInputReply, error)
    24  	PolicerInputV2(ctx context.Context, in *PolicerInputV2) (*PolicerInputV2Reply, error)
    25  	PolicerOutput(ctx context.Context, in *PolicerOutput) (*PolicerOutputReply, error)
    26  	PolicerOutputV2(ctx context.Context, in *PolicerOutputV2) (*PolicerOutputV2Reply, error)
    27  	PolicerReset(ctx context.Context, in *PolicerReset) (*PolicerResetReply, error)
    28  	PolicerUpdate(ctx context.Context, in *PolicerUpdate) (*PolicerUpdateReply, error)
    29  }
    30  
    31  type serviceClient struct {
    32  	conn api.Connection
    33  }
    34  
    35  func NewServiceClient(conn api.Connection) RPCService {
    36  	return &serviceClient{conn}
    37  }
    38  
    39  func (c *serviceClient) PolicerAdd(ctx context.Context, in *PolicerAdd) (*PolicerAddReply, error) {
    40  	out := new(PolicerAddReply)
    41  	err := c.conn.Invoke(ctx, in, out)
    42  	if err != nil {
    43  		return nil, err
    44  	}
    45  	return out, api.RetvalToVPPApiError(out.Retval)
    46  }
    47  
    48  func (c *serviceClient) PolicerAddDel(ctx context.Context, in *PolicerAddDel) (*PolicerAddDelReply, error) {
    49  	out := new(PolicerAddDelReply)
    50  	err := c.conn.Invoke(ctx, in, out)
    51  	if err != nil {
    52  		return nil, err
    53  	}
    54  	return out, api.RetvalToVPPApiError(out.Retval)
    55  }
    56  
    57  func (c *serviceClient) PolicerBind(ctx context.Context, in *PolicerBind) (*PolicerBindReply, error) {
    58  	out := new(PolicerBindReply)
    59  	err := c.conn.Invoke(ctx, in, out)
    60  	if err != nil {
    61  		return nil, err
    62  	}
    63  	return out, api.RetvalToVPPApiError(out.Retval)
    64  }
    65  
    66  func (c *serviceClient) PolicerBindV2(ctx context.Context, in *PolicerBindV2) (*PolicerBindV2Reply, error) {
    67  	out := new(PolicerBindV2Reply)
    68  	err := c.conn.Invoke(ctx, in, out)
    69  	if err != nil {
    70  		return nil, err
    71  	}
    72  	return out, api.RetvalToVPPApiError(out.Retval)
    73  }
    74  
    75  func (c *serviceClient) PolicerDel(ctx context.Context, in *PolicerDel) (*PolicerDelReply, error) {
    76  	out := new(PolicerDelReply)
    77  	err := c.conn.Invoke(ctx, in, out)
    78  	if err != nil {
    79  		return nil, err
    80  	}
    81  	return out, api.RetvalToVPPApiError(out.Retval)
    82  }
    83  
    84  func (c *serviceClient) PolicerDump(ctx context.Context, in *PolicerDump) (RPCService_PolicerDumpClient, error) {
    85  	stream, err := c.conn.NewStream(ctx)
    86  	if err != nil {
    87  		return nil, err
    88  	}
    89  	x := &serviceClient_PolicerDumpClient{stream}
    90  	if err := x.Stream.SendMsg(in); err != nil {
    91  		return nil, err
    92  	}
    93  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
    94  		return nil, err
    95  	}
    96  	return x, nil
    97  }
    98  
    99  type RPCService_PolicerDumpClient interface {
   100  	Recv() (*PolicerDetails, error)
   101  	api.Stream
   102  }
   103  
   104  type serviceClient_PolicerDumpClient struct {
   105  	api.Stream
   106  }
   107  
   108  func (c *serviceClient_PolicerDumpClient) Recv() (*PolicerDetails, error) {
   109  	msg, err := c.Stream.RecvMsg()
   110  	if err != nil {
   111  		return nil, err
   112  	}
   113  	switch m := msg.(type) {
   114  	case *PolicerDetails:
   115  		return m, nil
   116  	case *memclnt.ControlPingReply:
   117  		err = c.Stream.Close()
   118  		if err != nil {
   119  			return nil, err
   120  		}
   121  		return nil, io.EOF
   122  	default:
   123  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   124  	}
   125  }
   126  
   127  func (c *serviceClient) PolicerDumpV2(ctx context.Context, in *PolicerDumpV2) (RPCService_PolicerDumpV2Client, error) {
   128  	stream, err := c.conn.NewStream(ctx)
   129  	if err != nil {
   130  		return nil, err
   131  	}
   132  	x := &serviceClient_PolicerDumpV2Client{stream}
   133  	if err := x.Stream.SendMsg(in); err != nil {
   134  		return nil, err
   135  	}
   136  	if err = x.Stream.SendMsg(&memclnt.ControlPing{}); err != nil {
   137  		return nil, err
   138  	}
   139  	return x, nil
   140  }
   141  
   142  type RPCService_PolicerDumpV2Client interface {
   143  	Recv() (*PolicerDetails, error)
   144  	api.Stream
   145  }
   146  
   147  type serviceClient_PolicerDumpV2Client struct {
   148  	api.Stream
   149  }
   150  
   151  func (c *serviceClient_PolicerDumpV2Client) Recv() (*PolicerDetails, error) {
   152  	msg, err := c.Stream.RecvMsg()
   153  	if err != nil {
   154  		return nil, err
   155  	}
   156  	switch m := msg.(type) {
   157  	case *PolicerDetails:
   158  		return m, nil
   159  	case *memclnt.ControlPingReply:
   160  		err = c.Stream.Close()
   161  		if err != nil {
   162  			return nil, err
   163  		}
   164  		return nil, io.EOF
   165  	default:
   166  		return nil, fmt.Errorf("unexpected message: %T %v", m, m)
   167  	}
   168  }
   169  
   170  func (c *serviceClient) PolicerInput(ctx context.Context, in *PolicerInput) (*PolicerInputReply, error) {
   171  	out := new(PolicerInputReply)
   172  	err := c.conn.Invoke(ctx, in, out)
   173  	if err != nil {
   174  		return nil, err
   175  	}
   176  	return out, api.RetvalToVPPApiError(out.Retval)
   177  }
   178  
   179  func (c *serviceClient) PolicerInputV2(ctx context.Context, in *PolicerInputV2) (*PolicerInputV2Reply, error) {
   180  	out := new(PolicerInputV2Reply)
   181  	err := c.conn.Invoke(ctx, in, out)
   182  	if err != nil {
   183  		return nil, err
   184  	}
   185  	return out, api.RetvalToVPPApiError(out.Retval)
   186  }
   187  
   188  func (c *serviceClient) PolicerOutput(ctx context.Context, in *PolicerOutput) (*PolicerOutputReply, error) {
   189  	out := new(PolicerOutputReply)
   190  	err := c.conn.Invoke(ctx, in, out)
   191  	if err != nil {
   192  		return nil, err
   193  	}
   194  	return out, api.RetvalToVPPApiError(out.Retval)
   195  }
   196  
   197  func (c *serviceClient) PolicerOutputV2(ctx context.Context, in *PolicerOutputV2) (*PolicerOutputV2Reply, error) {
   198  	out := new(PolicerOutputV2Reply)
   199  	err := c.conn.Invoke(ctx, in, out)
   200  	if err != nil {
   201  		return nil, err
   202  	}
   203  	return out, api.RetvalToVPPApiError(out.Retval)
   204  }
   205  
   206  func (c *serviceClient) PolicerReset(ctx context.Context, in *PolicerReset) (*PolicerResetReply, error) {
   207  	out := new(PolicerResetReply)
   208  	err := c.conn.Invoke(ctx, in, out)
   209  	if err != nil {
   210  		return nil, err
   211  	}
   212  	return out, api.RetvalToVPPApiError(out.Retval)
   213  }
   214  
   215  func (c *serviceClient) PolicerUpdate(ctx context.Context, in *PolicerUpdate) (*PolicerUpdateReply, error) {
   216  	out := new(PolicerUpdateReply)
   217  	err := c.conn.Invoke(ctx, in, out)
   218  	if err != nil {
   219  		return nil, err
   220  	}
   221  	return out, api.RetvalToVPPApiError(out.Retval)
   222  }