github.com/edwarnicke/govpp@v0.0.0-20230130211138-14ef5d20b1d0/binapi/pnat/pnat_rpc.ba.go (about) 1 // Code generated by GoVPP's binapi-generator. DO NOT EDIT. 2 3 package pnat 4 5 import ( 6 "context" 7 "fmt" 8 "io" 9 10 api "git.fd.io/govpp.git/api" 11 ) 12 13 // RPCService defines RPC service pnat. 14 type RPCService interface { 15 PnatBindingAdd(ctx context.Context, in *PnatBindingAdd) (*PnatBindingAddReply, error) 16 PnatBindingAddV2(ctx context.Context, in *PnatBindingAddV2) (*PnatBindingAddV2Reply, error) 17 PnatBindingAttach(ctx context.Context, in *PnatBindingAttach) (*PnatBindingAttachReply, error) 18 PnatBindingDel(ctx context.Context, in *PnatBindingDel) (*PnatBindingDelReply, error) 19 PnatBindingDetach(ctx context.Context, in *PnatBindingDetach) (*PnatBindingDetachReply, error) 20 PnatBindingsGet(ctx context.Context, in *PnatBindingsGet) (RPCService_PnatBindingsGetClient, error) 21 PnatInterfacesGet(ctx context.Context, in *PnatInterfacesGet) (RPCService_PnatInterfacesGetClient, error) 22 } 23 24 type serviceClient struct { 25 conn api.Connection 26 } 27 28 func NewServiceClient(conn api.Connection) RPCService { 29 return &serviceClient{conn} 30 } 31 32 func (c *serviceClient) PnatBindingAdd(ctx context.Context, in *PnatBindingAdd) (*PnatBindingAddReply, error) { 33 out := new(PnatBindingAddReply) 34 err := c.conn.Invoke(ctx, in, out) 35 if err != nil { 36 return nil, err 37 } 38 return out, api.RetvalToVPPApiError(out.Retval) 39 } 40 41 func (c *serviceClient) PnatBindingAddV2(ctx context.Context, in *PnatBindingAddV2) (*PnatBindingAddV2Reply, error) { 42 out := new(PnatBindingAddV2Reply) 43 err := c.conn.Invoke(ctx, in, out) 44 if err != nil { 45 return nil, err 46 } 47 return out, api.RetvalToVPPApiError(out.Retval) 48 } 49 50 func (c *serviceClient) PnatBindingAttach(ctx context.Context, in *PnatBindingAttach) (*PnatBindingAttachReply, error) { 51 out := new(PnatBindingAttachReply) 52 err := c.conn.Invoke(ctx, in, out) 53 if err != nil { 54 return nil, err 55 } 56 return out, api.RetvalToVPPApiError(out.Retval) 57 } 58 59 func (c *serviceClient) PnatBindingDel(ctx context.Context, in *PnatBindingDel) (*PnatBindingDelReply, error) { 60 out := new(PnatBindingDelReply) 61 err := c.conn.Invoke(ctx, in, out) 62 if err != nil { 63 return nil, err 64 } 65 return out, api.RetvalToVPPApiError(out.Retval) 66 } 67 68 func (c *serviceClient) PnatBindingDetach(ctx context.Context, in *PnatBindingDetach) (*PnatBindingDetachReply, error) { 69 out := new(PnatBindingDetachReply) 70 err := c.conn.Invoke(ctx, in, out) 71 if err != nil { 72 return nil, err 73 } 74 return out, api.RetvalToVPPApiError(out.Retval) 75 } 76 77 func (c *serviceClient) PnatBindingsGet(ctx context.Context, in *PnatBindingsGet) (RPCService_PnatBindingsGetClient, error) { 78 stream, err := c.conn.NewStream(ctx) 79 if err != nil { 80 return nil, err 81 } 82 x := &serviceClient_PnatBindingsGetClient{stream} 83 if err := x.Stream.SendMsg(in); err != nil { 84 return nil, err 85 } 86 return x, nil 87 } 88 89 type RPCService_PnatBindingsGetClient interface { 90 Recv() (*PnatBindingsDetails, error) 91 api.Stream 92 } 93 94 type serviceClient_PnatBindingsGetClient struct { 95 api.Stream 96 } 97 98 func (c *serviceClient_PnatBindingsGetClient) Recv() (*PnatBindingsDetails, error) { 99 msg, err := c.Stream.RecvMsg() 100 if err != nil { 101 return nil, err 102 } 103 switch m := msg.(type) { 104 case *PnatBindingsDetails: 105 return m, nil 106 case *PnatBindingsGetReply: 107 err = c.Stream.Close() 108 if err != nil { 109 return nil, err 110 } 111 return nil, io.EOF 112 default: 113 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 114 } 115 } 116 117 func (c *serviceClient) PnatInterfacesGet(ctx context.Context, in *PnatInterfacesGet) (RPCService_PnatInterfacesGetClient, error) { 118 stream, err := c.conn.NewStream(ctx) 119 if err != nil { 120 return nil, err 121 } 122 x := &serviceClient_PnatInterfacesGetClient{stream} 123 if err := x.Stream.SendMsg(in); err != nil { 124 return nil, err 125 } 126 return x, nil 127 } 128 129 type RPCService_PnatInterfacesGetClient interface { 130 Recv() (*PnatInterfacesDetails, error) 131 api.Stream 132 } 133 134 type serviceClient_PnatInterfacesGetClient struct { 135 api.Stream 136 } 137 138 func (c *serviceClient_PnatInterfacesGetClient) Recv() (*PnatInterfacesDetails, error) { 139 msg, err := c.Stream.RecvMsg() 140 if err != nil { 141 return nil, err 142 } 143 switch m := msg.(type) { 144 case *PnatInterfacesDetails: 145 return m, nil 146 case *PnatInterfacesGetReply: 147 err = c.Stream.Close() 148 if err != nil { 149 return nil, err 150 } 151 return nil, io.EOF 152 default: 153 return nil, fmt.Errorf("unexpected message: %T %v", m, m) 154 } 155 }