public FileLockerRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { if (!Directory.Exists(AtomicActionFolder)) { Directory.CreateDirectory(AtomicActionFolder); } foreach (var file in Directory.GetFiles(AtomicActionFolder)) { try { File.Delete(file); } catch (Exception e) { Logger.MyLog($"Delete atomic file failed: {e}", LogLevel.Error); } } try { File.Delete(RedialLockerFile); } catch (Exception e) { Logger.MyLog($"Delete redial lock file failed: {e}", LogLevel.Error); } }
public FileLockerRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { if (!Directory.Exists(AtomicActionFolder)) { Directory.CreateDirectory(AtomicActionFolder); } foreach (var file in Directory.GetFiles(AtomicActionFolder)) { try { File.Delete(file); } catch { } } try { File.Delete(RedialLockerFile); } catch { } }
public FileLockerRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { if (!Directory.Exists(AtomicActionFolder)) { Directory.CreateDirectory(AtomicActionFolder); } }
/// <summary> /// 构造方法 /// </summary> /// <param name="redialer">拨号器</param> /// <param name="validater">网络状态检测器</param> protected RedialExecutor(IRedialer redialer, IInternetDetector validater) { if (redialer == null || validater == null) { throw new ArgumentException("redialer, validater should not be null."); } Redialer = redialer; InternetDetector = validater; }
protected RedialExecutor(IRedialer redialer, IInternetDetector validater) { if (redialer == null || validater == null) { throw new SpiderException("IWaitRedial should not be null."); } Redialer = redialer; InternetDetector = validater; }
/// <summary> /// 构造方法 /// </summary> /// <param name="redialer">拨号器</param> /// <param name="internetDetector">网络状态检测器</param> protected RedialExecutor(IRedialer redialer, IInternetDetector internetDetector) { if (redialer == null || internetDetector == null) { throw new ArgumentException("redialer, internetDetector should not be null"); } Redialer = redialer; InternetDetector = internetDetector; }
protected RedialExecutor(IRedialer redialer, IInternetDetector validater) { if (redialer == null || validater == null) { throw new SpiderException("IWaitRedial should not be null."); } Redialer = redialer; InternetDetector = validater; Logger = LogManager.GetCurrentClassLogger(); }
public RedisRedialExecutor(string connectString, IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { ConnectString = connectString; RedisConnection = Cache.Instance.Get(ConnectString); if (RedisConnection == null) { RedisConnection = new RedisConnection(ConnectString); Cache.Instance.Set(ConnectString, RedisConnection); } }
public FileLockerRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { var fileInfo = new FileInfo(FileLocker.RedialLockerFile); if (fileInfo.Exists) { try { fileInfo.Delete(); } catch { } } }
protected LocalRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { if (!Directory.Exists(AtomicActionFolder)) { Directory.CreateDirectory(AtomicActionFolder); } foreach (var file in Directory.GetFiles(AtomicActionFolder)) { try { File.Delete(file); } catch { // ignored } } }
/// <summary> /// 网络中心 /// </summary> /// <param name="redialer">拨号器</param> /// <param name="internetDetector">网络检测器</param> /// <param name="lockerFactory">Locker 工厂</param> /// <param name="options">下载器代理选项</param> /// <param name="logger">日志接口</param> public NetworkCenter( IAdslRedialer redialer, IInternetDetector internetDetector, ILockerFactory lockerFactory, DownloaderAgentOptions options, ILogger <NetworkCenter> logger) { _redialer = redialer; _internetDetector = internetDetector; _lockerFactory = lockerFactory; _options = options; _logger = logger; _sessionsFolder = Path.Combine(Framework.GlobalDirectory, "sessions"); if (!Directory.Exists(_sessionsFolder)) { Directory.CreateDirectory(_sessionsFolder); } }
/// <summary> /// 构造方法 /// </summary> /// <param name="redialer">拨号器</param> /// <param name="validater">网络状态检测器</param> public MutexRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { }
/// <summary> /// 构造方法 /// </summary> /// <param name="redialer">拨号器</param> /// <param name="internetDetector">网络状态检测器</param> public MutexRedialExecutor(IRedialer redialer, IInternetDetector internetDetector) : base(redialer, internetDetector) { }
public FileLockerRedialExecutor(IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { }
public RedisRedialExecutor(string host, string password, int port, IRedialer redialer, IInternetDetector validater) : base(redialer, validater) { Host = host; Password = password; Port = port; }