private IEnumerable <Repository> GetProjectsForUser(Task <User> task) { if (task.Exception == null) { User = task.Result; } if (User == null) { return(Enumerable.Empty <Repository>()); } var repos = new List <Repository>(); var orgs = GithubRepository.GetOrganisations(User.Login).Result; var userRepos = GithubRepository.GetProjects(User.Login).Result; repos.AddRange(userRepos); foreach (var org in orgs) { var orgRepos = GithubRepository.GetProjects(org.Login).Result; repos.AddRange(orgRepos); } return(repos); }
public Dictionary <User, IEnumerable <User> > GetOrganisationUsers() { var results = new Dictionary <User, IEnumerable <User> >(); if (User == null) { return(results); } var organisations = GithubRepository.GetOrganisations(User.Login).Result.ToList(); organisations.Add(User); foreach (var repo in organisations) { var result = GithubRepository.GetOrganisationUsers(repo.Login).Result; results.Add(repo, result); } return(null); }