func Serve(proto string, listenAddr string, relayers map[uint64]*shardrelayer.ShardRelayer) error {
	logrus.WithField("listen", listenAddr).Info("relayer listening for RPC")
	lis, err := net.Listen(proto, listenAddr)
	if err != nil {
		return err
	}
	s := grpc.NewServer()
	pb.RegisterRelayerRPCServer(s, &server{
		relayers: relayers,
	})
	// Register reflection service on gRPC server.
	reflection.Register(s)
	err = s.Serve(lis)
	return err
}
// Serve serves the RPC server
Serve serves the RPC server
// Serve serves the RPC server
func Serve(proto string, listenAddr string, relayers map[uint64]*shardrelayer.ShardRelayer) error {
	logrus.WithField("listen", listenAddr).Info("relayer listening for RPC")
	lis, err := net.Listen(proto, listenAddr)
	if err != nil {
		return err
	}
	s := grpc.NewServer()
	pb.RegisterRelayerRPCServer(s, &server{
		relayers: relayers,
	})
	reflection.Register(s)
	err = s.Serve(lis)
	return err
}
func Serve ( proto string , listenAddr string , relayers map [ uint64 ] * shardrelayer . ShardRelayer ) error { logrus . WithField ( " " , listenAddr ) . Info ( " " ) lis , err := net . Listen ( proto , listenAddr ) if err != nil { return err } s := grpc . NewServer ( ) pb . RegisterRelayerRPCServer ( s , & server { relayers : relayers , } ) reflection . Register ( s ) err = s . Serve ( lis ) return err }
Serve serves the RPC server
Serve serves the RPC server
// Register reflection service on gRPC server.