private async void Search2 <TBroker>() where TBroker : ISearchBroker, new() { repos.Clear(); paths.Clear(); var broker = new SearchRepositoriesBroker(); //using (var dialog = new SearchCriteriaForm { SelectedObject = broker }) // if (dialog.ShowDialog(this) == DialogResult.OK) broker.Term = "IdealAutomatex"; searchResult = await CreateSearcher(broker).SearchAsync(); //searchResult = searcher.Search(); foreach (var item in ((SearchResult <Octokit.Repository>)(searchResult)).Items) { repos.Add(item.Owner.Login + "/" + item.Name); Console.WriteLine(item.Name); } // BeginWork(BackgroundType.Search, CreateSearcher(broker)); // ((SearchResult<Octokit.Repository>)(searchResult)).Items var brokerx = new SearchCodeBroker(); using (var dialog = new SearchCriteriaForm { SelectedObject = brokerx }) if (dialog.ShowDialog(this) == DialogResult.OK) { int totalCount = 0; foreach (var item in repos) { brokerx.Repos = item; searchResult = await CreateSearcher(brokerx).SearchAsync(); //searchResult = searcher.Search(); foreach (var itemx in ((SearchResult <Octokit.SearchCode>)(searchResult)).Items) { totalCount++; paths.Add(itemx); // paths.Add(itemx.Repository.FullName + "/" + itemx.Path); Console.WriteLine(itemx.Repository.FullName + "/" + itemx.Path); } } SearchResult <Octokit.SearchCode> bigSearchResult = new SearchResult <SearchCode>(totalCount, false, new ReadOnlyCollection <SearchCode>(paths)); mainDataGridView.DataSource = null; this.searcher = CreateSearcher(brokerx); mainDataGridView.DataSource = bigSearchResult.DataSource; } CompleteSearch(); }
private SearchCodeBroker(SearchCodeBroker other) : base(other) { if (other == null) { return; } Extension = other.Extension; FileName = other.FileName; Forks = other.Forks; In = new List <CodeInQualifier>(other.In); Language = other.Language; Organization = other.Organization; Path = other.Path; Repos = other.Repos; Size = new Int32RangeBroker(other.Size); SortField = other.SortField; User = other.User; }
/// <summary> /// Create a searcher. /// </summary> /// <returns>The searcher that is created.</returns> public override Searcher CreateSearcher( GitHubClient client, int maximumCount) { previous = this; return(new CodeSearcher(client, maximumCount, CreateRequest())); }