internal AbstractWebBrowserConfigurationRunner(ThreadWrapperFactory threadWrapperFactory, WebBrowserFactory webBrowserFactory, WebBrowserConfigurationRunnerProcessor webBrowserConfigurationRunnerProcessor, WebBrowserDisposerFactory webBrowserDisposerFactory) { WebBrowserFactory = webBrowserFactory; ThreadWrapperFactory = threadWrapperFactory; WebBrowserConfigurationRunnerProcessor = webBrowserConfigurationRunnerProcessor; WebBrowserDisposerFactory = webBrowserDisposerFactory; }
internal ThreadLockWebBrowserConfigurationRunner(ThreadWrapperFactory threadWrapperFactory, WebBrowserFactory webBrowserFactory, WebBrowserConfigurationRunnerProcessor webBrowserConfigurationRunnerProcessor, WebBrowserDisposerFactory webBrowserDisposerFactory) : base(threadWrapperFactory, webBrowserFactory, webBrowserConfigurationRunnerProcessor, webBrowserDisposerFactory) { }
public void Run(IDataWebScraperConfiguration dataWebScraperConfiguration) { _webBrowserConfigurationRunnerProcessorWascompleted = false; WebBrowserConfigurationRunnerProcessor.WebBrowserConfigurationRunnerProcessorWasCompleted += WebBrowserConfigurationRunnerProcessor_WebBrowserConfigurationRunnerProcessorWasCompleted; _threadWrapper = ThreadWrapperFactory.GetThreadWrapper(new ParameterizedThreadStart(ProcessDataWebScraperconfigurationInWebBrowser)); _threadWrapper.SetApartmentState(ApartmentState.STA); _threadWrapper.Start(dataWebScraperConfiguration); if (WaitForProcessToBeCompleted) { while (!_webBrowserConfigurationRunnerProcessorWascompleted) { Thread.Sleep(1000); } } }