public async Task <RoundState[]> GetStatusAsync(CancellationToken cancellationToken) { using (await AsyncLock.LockAsync(cancellationToken).ConfigureAwait(false)) { return(Rounds.Select(x => RoundState.FromRound(x)).ToArray()); } }
public void DisposeAllAliceClients() { lock (StateLock) { foreach (var aliceClient in Rounds?.Select(x => x?.Registration?.AliceClient)) { aliceClient?.Dispose(); } } }
public Tableau VersModeleTableau() { return(new Tableau { Id = Id, Nom = Nom, Niveau = Niveau, Rounds = Rounds.Select(r => r.VersModeleRound()) }); }
public bool AnyCoinsQueued() { lock (StateLock) { if (WaitingList.Any()) { return(true); } foreach (var coins in Rounds.Select(x => x.CoinsRegistered)) { if (coins.Any()) { return(true); } } return(false); } }
private void SaveRounds() { if (Rounds.IsNullOrEmpty()) { return; } var fileName = FileDialogService.FileNameFromSaveFileDialog(ProgramTexts.FileDialog_XmlFileFilter); if (fileName.IsNullOrEmpty()) { return; } using (var sw = new StreamWriter(fileName)) { var roundsToSerialize = Rounds.Select(x => new RoundSerializable(x)).ToList(); _roundsSerializer.Serialize(sw, roundsToSerialize); } }