public static void ConfigureServices(IServiceCollection services) { services.AddSingleton(Configuration); services.AddSingleton(new GitHubClient(new ProductHeaderValue("GitHub-repo-finder-for-dead-links-in-readmes"))); services.AddSingleton(new SearchRepositoriesRequest() { // lets find a library with over ? stars Stars = Octokit.Range.GreaterThan(5000), //Stars = Octokit.Range.LessThan(1), // check for repos that have been updated between a given date range? Updated = DateRange.Between(DateTimeOffset.UtcNow.AddHours(-1), DateTimeOffset.UtcNow), // orrder by? SortField = RepoSearchSort.Updated, Order = SortDirection.Descending, }); var linkGetter = new LinkGetter(new HttpClient(), "readme"); services.AddTransient <ILinkGetter>(s => linkGetter); services.AddTransient <ILinkChecker>(s => new LinkChecker(new HttpClient(), linkGetter)); services.AddTransient <ProgramUI, ProgramUI>(); services.AddTransient <IFileNameFromUri, FileNameFromUri>(); services.AddSingleton <IUriFinder, GitHubActiveReposFinder>(); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { services.AddTransient <HttpClient, HttpClient>(); var linkGetter = new LinkGetter(new HttpClient(), "readme"); services.AddTransient <ILinkGetter>(s => linkGetter); services.AddTransient <ILinkChecker>(s => new LinkChecker(new HttpClient(), linkGetter)); var gitHubClient = new GitHubClient(new ProductHeaderValue("GitHub-repo-finder-for-dead-links-in-readmes-web")); services.AddTransient(s => gitHubClient); services.AddTransient <SearchRepositoriesRequest, SearchRepositoriesRequest>(); services.AddTransient(s => new GitHubActiveReposFinder(gitHubClient)); services.AddControllersWithViews(); }