private UrlTransformResult TransformUrlIfRecognized(string pageUrl, string pageAuth) { UrlTransformResult urlTransformResult = null; frmWait.RunWork(this, (onProgress) => { urlTransformResult = UrlTransformer.TransformIfRecognized(pageUrl, pageAuth); }); return(urlTransformResult); }
private bool AddThread(string pageUrl, string pageAuth, string imageAuth, int checkIntervalSeconds, bool oneTimeDownload, string description, UrlTransformResult urlTransformResult) { if (urlTransformResult != null) { pageUrl = urlTransformResult.TransformedUrl; } SiteHelper siteHelper = SiteHelper.CreateByUrl(pageUrl); string globalThreadID = siteHelper.GetGlobalThreadID(); ThreadWatcher watcher = ThreadList.Items.FirstOrDefault(w => w.GlobalThreadID.Equals(globalThreadID, StringComparison.OrdinalIgnoreCase)); if (watcher == null) { description ??= urlTransformResult?.DefaultDescription ?? siteHelper.GetDefaultDescription(); watcher = ThreadWatcher.Create(siteHelper, pageUrl, pageAuth, imageAuth, oneTimeDownload, checkIntervalSeconds, description); AttachWatcherToUI(watcher); DisplayDescription(watcher); DisplayAddedOn(watcher); ThreadList.Add(watcher); } else { if (watcher.IsRunning) { return(false); } watcher.PageAuth = pageAuth; watcher.ImageAuth = imageAuth; watcher.CheckIntervalSeconds = checkIntervalSeconds; watcher.OneTimeDownload = oneTimeDownload; if (description != null) { watcher.Description = description; DisplayDescription(watcher); } } watcher.Start(); _saveThreadList = true; return(true); }