private Task OnPlayerLeftGameDomainEventAsync(PlayerLeftGameDomainEvent evt)
        {
            var playerDto = DomainGameService.MapToPlayerDto(evt.Player);

            return(PublishIfEnabledAsync(PlayerLeftGameEvent.FromPlayerInGame(
                                             evt.GameId,
                                             playerDto
                                             )));
        }
 private void UnsubscribeAll()
 {
     _eventBus.Unsubscribe <GameStateChangedDomainEvent>(GameStateChangedDomainEvent.GetId(),
                                                         OnGameStateChangedDomainEventAsync);
     _eventBus.Unsubscribe <PlayerAddedToVesselRoleDomainEvent>(PlayerAddedToVesselRoleDomainEvent.GetId(),
                                                                OnPlayerAddedToVesselRoleDomainEventAsync);
     _eventBus.Unsubscribe <PlayerJoinedGameDomainEvent>(PlayerJoinedGameDomainEvent.GetId(),
                                                         OnPlayerJoinedGameDomainEventAsync);
     _eventBus.Unsubscribe <PlayerLeftGameDomainEvent>(PlayerLeftGameDomainEvent.GetId(),
                                                       OnPlayerLeftGameDomainEventAsync);
     _eventBus.Unsubscribe <PlayerRemovedFromVesselRoleDomainEvent>(PlayerRemovedFromVesselRoleDomainEvent.GetId(),
                                                                    OnPlayerRemovedFromVesselRoleDomainEventAsync);
     _eventBus.Unsubscribe <PlayerSignedInDomainEvent>(PlayerSignedInDomainEvent.GetId(),
                                                       OnPlayerSignedInDomainEventAsync);
     _eventBus.Unsubscribe <PlayerSignedOutDomainEvent>(PlayerSignedOutDomainEvent.GetId(),
                                                        OnPlayerSignedOutDomainEventAsync);
     _eventBus.Unsubscribe <VesselStateChangedDomainEvent>(VesselStateChangedDomainEvent.GetId(),
                                                           OnVesselStateChangedDomainEventAsync);
 }