public void leaveTable(MutablePlayer player) {
if (player == null)
throw new IllegalArgumentException("The given player should be effective.");
HoldemPlayerListener playerListener = sitInPlayers.get(player.getId());
HoldemTableListener tableListener = joinedPlayers.remove(player.getId());
if (playerListener != null) {
tableState.stopPlaying(player.getId());
unsubscribeHoldemPlayerListener(player.getId(), playerListener);
}