public static DownloaderAgentBuilder UseFileLocker(this DownloaderAgentBuilder builder) { Check.NotNull(builder, nameof(builder)); builder.Services.AddSingleton <ILockerFactory, FileLockerFactory>(); return(builder); }
public static DownloaderAgentBuilder UseVpsInternetDetector(this DownloaderAgentBuilder builder) { Check.NotNull(builder, nameof(builder)); builder.Services.AddSingleton <IInternetDetector, VpsInternetDetector>(); return(builder); }
public static DownloaderAgentBuilder UseDefaultAdslRedialer(this DownloaderAgentBuilder builder) { Check.NotNull(builder, nameof(builder)); builder.Services.AddSingleton <IAdslRedialer, DefaultAdslRedialer>(); return(builder); }
public static IServiceCollection AddDownloaderAgent(this IServiceCollection services, Action <DownloaderAgentBuilder> configure = null) { services.AddSingleton <IHostedService, DefaultDownloaderAgent>(); services.AddSingleton <NetworkCenter>(); services.AddSingleton <DownloaderAgentOptions>(); DownloaderAgentBuilder spiderAgentBuilder = new DownloaderAgentBuilder(services); configure?.Invoke(spiderAgentBuilder); return(services); }