Exemple #1
0
        public static DownloaderAgentBuilder UseFileLocker(this DownloaderAgentBuilder builder)
        {
            Check.NotNull(builder, nameof(builder));

            builder.Services.AddSingleton <ILockerFactory, FileLockerFactory>();

            return(builder);
        }
Exemple #2
0
        public static DownloaderAgentBuilder UseVpsInternetDetector(this DownloaderAgentBuilder builder)
        {
            Check.NotNull(builder, nameof(builder));

            builder.Services.AddSingleton <IInternetDetector, VpsInternetDetector>();

            return(builder);
        }
Exemple #3
0
        public static DownloaderAgentBuilder UseDefaultAdslRedialer(this DownloaderAgentBuilder builder)
        {
            Check.NotNull(builder, nameof(builder));

            builder.Services.AddSingleton <IAdslRedialer, DefaultAdslRedialer>();

            return(builder);
        }
Exemple #4
0
        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);
        }