public RedisStatusUpdater(Core.Spider spider, ISpiderStatus spiderStatus) { _spider = spider; _spiderStatus = spiderStatus; string host = ConfigurationManager.AppSettings["redishost"]; _password = ConfigurationManager.AppSettings["redishostpass"]; if (!string.IsNullOrEmpty(host)) { _pool = new RedisManagerPool(host); } }
private void Register(Core.Spider spider, ISpiderStatus spiderStatus, MonitorSpiderListener monitorSpiderListener) { if (spider.ShowControl) { Form1 form1 = new Form1(spiderStatus); form1.ShowDialog(); } if (spider.SaveStatusInRedis) { RedisStatusUpdater statusUpdater = new RedisStatusUpdater(spider, spiderStatus); monitorSpiderListener.ClosingEvent += statusUpdater.UpdateStatus; statusUpdater.Run(); } }
public SpiderMonitor Register(params Core.Spider[] spiders) { foreach (Core.Spider spider in spiders) { MonitorSpiderListener monitorSpiderListener = new MonitorSpiderListener(); if (spider.GetSpiderListeners() == null) { List <ISpiderListener> spiderListeners = new List <ISpiderListener> { monitorSpiderListener }; spider.SetSpiderListeners(spiderListeners); } else { spider.GetSpiderListeners().Add(monitorSpiderListener); } ISpiderStatus spiderStatus = GetSpiderStatus(spider, monitorSpiderListener); Register(spider, spiderStatus, monitorSpiderListener); } return(this); }
public Form1(ISpiderStatus spiderStatus) { InitializeComponent(); this._spiderStatus = spiderStatus; }