github.com/tickoalcantara12/micro/v3@v3.0.0-20221007104245-9d75b9bcbab9/cmd/protoc-gen-micro/examples/greeter/greeter.pb.micro.go (about) 1 // Code generated by protoc-gen-micro. DO NOT EDIT. 2 // source: cmd/protoc-gen-micro/examples/greeter/greeter.proto 3 4 package greeter 5 6 import ( 7 fmt "fmt" 8 math "math" 9 10 proto "github.com/golang/protobuf/proto" 11 _ "google.golang.org/genproto/googleapis/api/annotations" 12 13 context "context" 14 15 server "github.com/tickoalcantara12/micro/v3/service/server" 16 17 api "github.com/tickoalcantara12/micro/v3/service/api" 18 19 client "github.com/tickoalcantara12/micro/v3/service/client" 20 ) 21 22 // Reference imports to suppress errors if they are not otherwise used. 23 var _ = proto.Marshal 24 var _ = fmt.Errorf 25 var _ = math.Inf 26 27 // This is a compile-time assertion to ensure that this generated file 28 // is compatible with the proto package it is being compiled against. 29 // A compilation error at this line likely means your copy of the 30 // proto package needs to be updated. 31 const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package 32 33 // Reference imports to suppress errors if they are not otherwise used. 34 var _ api.Endpoint 35 var _ context.Context 36 var _ client.Option 37 var _ server.Option 38 39 // Api Endpoints for Greeter service 40 41 func NewGreeterEndpoints() []*api.Endpoint { 42 return []*api.Endpoint{ 43 &api.Endpoint{ 44 Name: "Greeter.Hello", 45 Path: []string{"/hello"}, 46 Method: []string{"POST"}, 47 Body: "*", 48 Handler: "rpc", 49 }, 50 &api.Endpoint{ 51 Name: "Greeter.Stream", 52 Path: []string{"/stream"}, 53 Method: []string{"GET"}, 54 Stream: true, 55 Handler: "rpc", 56 }, 57 } 58 } 59 60 // Client API for Greeter service 61 62 type GreeterService interface { 63 Hello(ctx context.Context, in *Request, opts ...client.CallOption) (*Response, error) 64 Stream(ctx context.Context, opts ...client.CallOption) (Greeter_StreamService, error) 65 } 66 67 type greeterService struct { 68 c client.Client 69 name string 70 } 71 72 func NewGreeterService(name string, c client.Client) GreeterService { 73 return &greeterService{ 74 c: c, 75 name: name, 76 } 77 } 78 79 func (c *greeterService) Hello(ctx context.Context, in *Request, opts ...client.CallOption) (*Response, error) { 80 req := c.c.NewRequest(c.name, "Greeter.Hello", in) 81 out := new(Response) 82 err := c.c.Call(ctx, req, out, opts...) 83 if err != nil { 84 return nil, err 85 } 86 return out, nil 87 } 88 89 func (c *greeterService) Stream(ctx context.Context, opts ...client.CallOption) (Greeter_StreamService, error) { 90 req := c.c.NewRequest(c.name, "Greeter.Stream", &Request{}) 91 stream, err := c.c.Stream(ctx, req, opts...) 92 if err != nil { 93 return nil, err 94 } 95 return &greeterServiceStream{stream}, nil 96 } 97 98 type Greeter_StreamService interface { 99 Context() context.Context 100 SendMsg(interface{}) error 101 RecvMsg(interface{}) error 102 Close() error 103 Send(*Request) error 104 Recv() (*Response, error) 105 } 106 107 type greeterServiceStream struct { 108 stream client.Stream 109 } 110 111 func (x *greeterServiceStream) Close() error { 112 return x.stream.Close() 113 } 114 115 func (x *greeterServiceStream) Context() context.Context { 116 return x.stream.Context() 117 } 118 119 func (x *greeterServiceStream) SendMsg(m interface{}) error { 120 return x.stream.Send(m) 121 } 122 123 func (x *greeterServiceStream) RecvMsg(m interface{}) error { 124 return x.stream.Recv(m) 125 } 126 127 func (x *greeterServiceStream) Send(m *Request) error { 128 return x.stream.Send(m) 129 } 130 131 func (x *greeterServiceStream) Recv() (*Response, error) { 132 m := new(Response) 133 err := x.stream.Recv(m) 134 if err != nil { 135 return nil, err 136 } 137 return m, nil 138 } 139 140 // Server API for Greeter service 141 142 type GreeterHandler interface { 143 Hello(context.Context, *Request, *Response) error 144 Stream(context.Context, Greeter_StreamStream) error 145 } 146 147 func RegisterGreeterHandler(s server.Server, hdlr GreeterHandler, opts ...server.HandlerOption) error { 148 type greeter interface { 149 Hello(ctx context.Context, in *Request, out *Response) error 150 Stream(ctx context.Context, stream server.Stream) error 151 } 152 type Greeter struct { 153 greeter 154 } 155 h := &greeterHandler{hdlr} 156 opts = append(opts, api.WithEndpoint(&api.Endpoint{ 157 Name: "Greeter.Hello", 158 Path: []string{"/hello"}, 159 Method: []string{"POST"}, 160 Body: "*", 161 Handler: "rpc", 162 })) 163 opts = append(opts, api.WithEndpoint(&api.Endpoint{ 164 Name: "Greeter.Stream", 165 Path: []string{"/stream"}, 166 Method: []string{"GET"}, 167 Stream: true, 168 Handler: "rpc", 169 })) 170 return s.Handle(s.NewHandler(&Greeter{h}, opts...)) 171 } 172 173 type greeterHandler struct { 174 GreeterHandler 175 } 176 177 func (h *greeterHandler) Hello(ctx context.Context, in *Request, out *Response) error { 178 return h.GreeterHandler.Hello(ctx, in, out) 179 } 180 181 func (h *greeterHandler) Stream(ctx context.Context, stream server.Stream) error { 182 return h.GreeterHandler.Stream(ctx, &greeterStreamStream{stream}) 183 } 184 185 type Greeter_StreamStream interface { 186 Context() context.Context 187 SendMsg(interface{}) error 188 RecvMsg(interface{}) error 189 Close() error 190 Send(*Response) error 191 Recv() (*Request, error) 192 } 193 194 type greeterStreamStream struct { 195 stream server.Stream 196 } 197 198 func (x *greeterStreamStream) Close() error { 199 return x.stream.Close() 200 } 201 202 func (x *greeterStreamStream) Context() context.Context { 203 return x.stream.Context() 204 } 205 206 func (x *greeterStreamStream) SendMsg(m interface{}) error { 207 return x.stream.Send(m) 208 } 209 210 func (x *greeterStreamStream) RecvMsg(m interface{}) error { 211 return x.stream.Recv(m) 212 } 213 214 func (x *greeterStreamStream) Send(m *Response) error { 215 return x.stream.Send(m) 216 } 217 218 func (x *greeterStreamStream) Recv() (*Request, error) { 219 m := new(Request) 220 if err := x.stream.Recv(m); err != nil { 221 return nil, err 222 } 223 return m, nil 224 }