public void ChangeGameStatus(int gameId, GameInfo.GameStatus status) { log.DebugFormat("In ChangeChangeStatus for gameId={0}", gameId); lock (myLock) { if (games.ContainsKey(gameId)) { log.DebugFormat("Change status to {0}", status); games[gameId].Status = status; games[gameId].AliveTimestamp = DateTime.Now; Save(); } } }
public GameInfoAlt[] GetGamesAlt(GameInfo.GameStatus status = GameInfo.GameStatus.AVAILABLE) { List <GameInfo> games = Registry.Instance.GetGames(status); GameInfoAlt[] results = new GameInfoAlt[games.Count]; for (int i = 0; i < games.Count; i++) { results[i] = new GameInfoAlt() { Id = games[i].Id, CommunicationEndPoint = games[i].CommunicationEndPoint.ToString(), Status = games[i].Status.ToString(), AliveTimestamp = games[i].AliveTimestamp.ToString(), Label = games[i].Label }; } return(results); }
public List <GameInfo> GetGames(GameInfo.GameStatus status) { log.Debug("In GetGames"); List <GameInfo> filteredGameList = new List <GameInfo>(); lock (myLock) { Dictionary <int, GameInfo> .Enumerator enumerator = games.GetEnumerator(); while (enumerator.MoveNext()) { if (enumerator.Current.Value.Status == status) { filteredGameList.Add(enumerator.Current.Value); } } } return(filteredGameList); }
public void ChangeStatus(int gameId, GameInfo.GameStatus status) { Registry.Instance.ChangeGameStatus(gameId, status); }
public GameInfo[] GetGames(GameInfo.GameStatus status = GameInfo.GameStatus.AVAILABLE) { return(Registry.Instance.GetGames(status).ToArray()); }