/// <summary>Register service method with a service binder with or without implementation. Useful when customizing the  service binding logic.
 /// Note: this method is part of an experimental API that can change or be removed without any prior notice.</summary>
 /// <param name="serviceBinder">Service methods will be bound by calling <c>AddMethod</c> on this object.</param>
 /// <param name="serviceImpl">An object implementing the server-side handling logic.</param>
 public static void BindService(grpc::ServiceBinderBase serviceBinder, PlayerServiceBase serviceImpl)
 {
     serviceBinder.AddMethod(__Method_AddPlayer, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Protos.AddPlayerRequest, global::Protos.AddPlayerResponse>(serviceImpl.AddPlayer));
     serviceBinder.AddMethod(__Method_GetPlayers, serviceImpl == null ? null : new grpc::UnaryServerMethod <global::Protos.Empty, global::Protos.GetPlayersResponse>(serviceImpl.GetPlayers));
 }
 public LobbyController(Action <List <ServerPlayerModel> > onAllPlayersReadyHandler)
 {
     this.onAllPlayersReadyHandler = onAllPlayersReadyHandler;
     this.playerService            = DIContainer.GetInstanceByContextID <PlayerServiceBase>(InstanceServerApplication.CONTEXT_ID);
 }
 /// <summary>Creates service definition that can be registered with a server</summary>
 /// <param name="serviceImpl">An object implementing the server-side handling logic.</param>
 public static grpc::ServerServiceDefinition BindService(PlayerServiceBase serviceImpl)
 {
     return(grpc::ServerServiceDefinition.CreateBuilder()
            .AddMethod(__Method_AddPlayer, serviceImpl.AddPlayer)
            .AddMethod(__Method_GetPlayers, serviceImpl.GetPlayers).Build());
 }