public override void Execute() { IEnumerator iEnumerator = NextSteps.GetEnumerator(); foreach (var depend in _dependData) { // Create Temp Data to store var scrapingResult = new List <Dictionary <string, string> >(); // Execute Child Step while (iEnumerator.MoveNext()) { ScrapingConfigBase config = (ScrapingConfigBase)iEnumerator.Current; var dependData = new List <string> { depend }; config.SetDepentData(dependData); config.SetStoreData(scrapingResult); config.Execute(); } iEnumerator.Reset(); // Store to Memmory StoreData(scrapingResult); } }
protected virtual void ExcuteChildConfig(IEnumerator iEnumerator) { while (iEnumerator.MoveNext()) { ScrapingConfigBase config = (ScrapingConfigBase)iEnumerator.Current; config.SetDepentData(_tempData); config.SetStoreData(_storeData); config.Execute(); } }
/// <summary> /// Sets the response data. /// </summary> /// <param name="data">The data.</param> public virtual void SetResponseData(Dictionary <string, List <Dictionary <string, string> > > data) { _responseData = data; IEnumerator childs = NextSteps.GetEnumerator(); while (childs.MoveNext()) { ScrapingConfigBase config = (ScrapingConfigBase)childs.Current; config.SetResponseData(data); } }
protected void SetStepTypeOfChilds(List <StepType> stepTypes) { IEnumerator iEnumerator = NextSteps.GetEnumerator(); while (iEnumerator.MoveNext()) { ScrapingConfigBase config = (ScrapingConfigBase)iEnumerator.Current; var currentType = config.StepType; stepTypes.Add(currentType); config.SetStepTypeOfChilds(stepTypes); } }
protected override void ExcuteChildConfig(IEnumerator iEnumerator) { // Quit Webdriver If WebDriver use in childs step var childTypes = new List <StepType>(); SetStepTypeOfChilds(childTypes); while (iEnumerator.MoveNext()) { ScrapingConfigBase config = (ScrapingConfigBase)iEnumerator.Current; config.SetDepentData(_tempData); config.SetStoreData(_storeData); if (childTypes.Any(x => x == StepType.WebDriver)) { config.SetWebDriver(_webDrive); } config.Execute(); } iEnumerator.Reset(); }
private void ProcessData(string document, IEnumerator iEnumerator) { var collectData = ScrapeData(document); foreach (var data in collectData) { _tempData = new List <string>(); var catchdata = new Dictionary <string, string> { { data.Key, data.Value } }; this.StoreToTempData(catchdata); // Execute Child Step while (iEnumerator.MoveNext()) { ScrapingConfigBase config = (ScrapingConfigBase)iEnumerator.Current; config.SetDepentData(_tempData); config.SetStoreData(_storeData); config.Execute(); } iEnumerator.Reset(); } }
public override void Add(ScrapingConfigBase ScrapingConfig) { NextSteps.Add(ScrapingConfig); }
/// <summary> /// Adds the specified scrap configuration. /// </summary> /// <param name="ScrapConfig">The scrap configuration.</param> public abstract void Add(ScrapingConfigBase ScrapingConfig);