public void Execute(WebBrowser webBrowser, IEnumerable <IDataWebScraperStepProperty> dataWebScraperStepProperties) { IDataWebScraperStepProperty urlProperty = DataWebScrapperStepPropertyValidator.GetFirstProperty(DataWebScraperStepPropertyType.Url, dataWebScraperStepProperties); IDataWebScraperStepProperty millisecondsToHoldProperty = DataWebScrapperStepPropertyValidator.GetFirstProperty(DataWebScraperStepPropertyType.MillisecondsToHold, dataWebScraperStepProperties); DataWebScrapperStepPropertyValidator.ValidatePropertyValueNotEmpty(urlProperty); DataWebScrapperStepPropertyValidator.ValidatePropertyValueNumericNotZero(millisecondsToHoldProperty); DataWebScraperThreadHolder = ThreadHolderManagerFactory.GetDataWebScraperThreadHolder(long.Parse(millisecondsToHoldProperty.Value)); DataWebScraperThreadHolder.SetThreadValue(false); try { webBrowser.DocumentCompleted += WebBrowser_DocumentCompleted; webBrowser.Navigate(urlProperty.Value); //DataWebScraperThreadHolder.WaitUntilValue(true); }catch (Exception e) { string r = e.Message; } }
internal LoadWebPageDataWebScraperStepStrategy(DataWebScrapperStepPropertyValidator dataWebScrapperStepPropertyValidator, ThreadHolderManagerFactory threadHolderManagerFactory) { DataWebScrapperStepPropertyValidator = dataWebScrapperStepPropertyValidator; ThreadHolderManagerFactory = threadHolderManagerFactory; }
public LoadWebPageDataWebScraperStepStrategy() { DataWebScrapperStepPropertyValidator = new DataWebScrapperStepPropertyValidator(); ThreadHolderManagerFactory = new ThreadHolderManagerFactory(); }