public async Task <Token> AddPlayerAsync(string username) { var gameTokenValue = await _keyGenerator.GenerateGameTokenAsync(username); var token = new Token { Value = gameTokenValue, ExpirationDate = DateTime.UtcNow.Add(new TimeSpan(0, 0, 30, 0)) /* 30 min in the future. */ }; await _vault.AddGameTokenAsync(token); _players.Add(new Player { Name = username, Status = PlayerStatus.Online, GameToken = gameTokenValue }); return(token); }