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 }