| // This file contains the generated server side code. |
| // It's only used for grpclb testing. |
| |
| package grpclb |
| |
| import ( |
| "google.golang.org/grpc" |
| lbpb "google.golang.org/grpc/grpclb/grpc_lb_v1" |
| ) |
| |
| // Server API for LoadBalancer service |
| |
| type loadBalancerServer interface { |
| // Bidirectional rpc to get a list of servers. |
| BalanceLoad(*loadBalancerBalanceLoadServer) error |
| } |
| |
| func registerLoadBalancerServer(s *grpc.Server, srv loadBalancerServer) { |
| s.RegisterService( |
| &grpc.ServiceDesc{ |
| ServiceName: "grpc.lb.v1.LoadBalancer", |
| HandlerType: (*loadBalancerServer)(nil), |
| Methods: []grpc.MethodDesc{}, |
| Streams: []grpc.StreamDesc{ |
| { |
| StreamName: "BalanceLoad", |
| Handler: balanceLoadHandler, |
| ServerStreams: true, |
| ClientStreams: true, |
| }, |
| }, |
| Metadata: "grpclb.proto", |
| }, srv) |
| } |
| |
| func balanceLoadHandler(srv interface{}, stream grpc.ServerStream) error { |
| return srv.(loadBalancerServer).BalanceLoad(&loadBalancerBalanceLoadServer{stream}) |
| } |
| |
| type loadBalancerBalanceLoadServer struct { |
| grpc.ServerStream |
| } |
| |
| func (x *loadBalancerBalanceLoadServer) Send(m *lbpb.LoadBalanceResponse) error { |
| return x.ServerStream.SendMsg(m) |
| } |
| |
| func (x *loadBalancerBalanceLoadServer) Recv() (*lbpb.LoadBalanceRequest, error) { |
| m := new(lbpb.LoadBalanceRequest) |
| if err := x.ServerStream.RecvMsg(m); err != nil { |
| return nil, err |
| } |
| return m, nil |
| } |