/// <summary> /// Called when a download link search is done. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void SingleDownloadSearchDone(object sender, EventArgs e) { _done.Add(sender as DownloadSearchEngine); (sender as DownloadSearchEngine).DownloadSearchNewLink -= SingleDownloadSearchNewLink; (sender as DownloadSearchEngine).DownloadSearchDone -= SingleDownloadSearchDone; (sender as DownloadSearchEngine).DownloadSearchError -= SingleDownloadSearchError; DownloadSearchEngineDone.Fire(this, SearchEngines.Except(_done).ToList()); if (_done.Count == SearchEngines.Count) { Log.Debug("Search finished in " + (DateTime.Now - _start).TotalSeconds + "s."); DownloadSearchDone.Fire(this); } }
/// <summary> /// Called when a subtitle search is done. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void SingleSubtitleSearchDone(object sender, EventArgs e) { _done.Add((SubtitleSearchEngine)sender); (sender as SubtitleSearchEngine).SubtitleSearchNewLink += SingleSubtitleSearchNewLink; (sender as SubtitleSearchEngine).SubtitleSearchDone += SingleSubtitleSearchDone; (sender as SubtitleSearchEngine).SubtitleSearchError += SingleSubtitleSearchError; SubtitleSearchEngineDone.Fire(this, SearchEngines.Except(_done).ToList()); if (_done.Count == SearchEngines.Count) { Log.Debug("Search finished in " + (DateTime.Now - _start).TotalSeconds + "s."); SubtitleSearchDone.Fire(this); } }
/// <summary> /// Called when a download link search has encountered an error. /// </summary> /// <param name="sender">The sender.</param> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> private void SingleDownloadSearchError(object sender, EventArgs <string, Exception> e) { _done.Add(sender as DownloadSearchEngine); (sender as DownloadSearchEngine).DownloadSearchNewLink -= SingleDownloadSearchNewLink; (sender as DownloadSearchEngine).DownloadSearchDone -= SingleDownloadSearchDone; (sender as DownloadSearchEngine).DownloadSearchError -= SingleDownloadSearchError; Log.Warn("Error while searching on " + ((DownloadSearchEngine)sender).Name + ".", e.Second); DownloadSearchEngineError.Fire(this, e.First, e.Second); DownloadSearchEngineDone.Fire(this, SearchEngines.Except(_done).ToList()); if (_done.Count == SearchEngines.Count) { Log.Debug("Search finished in " + (DateTime.Now - _start).TotalSeconds + "s."); DownloadSearchDone.Fire(this); } }