public void Download(Metadata metadata, CoverDownloaderFilters filters) { if (metadata == null) { return; } CoverDownloaderJob job; if (TryFindJob(metadata.Id, out job)) { return; } SearchResult searchResult = new SearchResult(); searchResult.Result = new List <Metadata>(); searchResult.Result.Add(metadata); searchResult.PerPage = 1; searchResult.NumPages = 1; job = new CoverDownloaderJob(HttpClient, PathFormatter, MetadataKeywordLists, searchResult, filters); job.CoverDownloadReportProgress += Job_CoverDownloadReportProgress; job.CoversDownloadStarted += Job_CoversDownloadStarted; job.CoversDownloadCancelled += Job_CoversDownloadCancelled; job.CoversDownloadCompleted += Job_CoversDownloadCompleted; AddJob(job); }
public DownloadCoversRunArg(HttpClient httpClient, IPathFormatter pathFormatter, SearchResult searchResult, MetadataKeywordLists metadataKeywordLists, CoverDownloaderFilters filters) { HttpClient = httpClient; PathFormatter = pathFormatter; SearchResult = searchResult; MetadataKeywordLists = metadataKeywordLists; Filters = filters; }
public CoverDownloaderJob(HttpClient httpClient, IPathFormatter pathFormatter, MetadataKeywordLists metadataKeywordLists, SearchResult searchResult, CoverDownloaderFilters filters) { HttpClient = httpClient; PathFormatter = pathFormatter; SearchResult = searchResult; MetadataKeywordLists = metadataKeywordLists; Filters = filters; BackgroundWorker.WorkerReportsProgress = true; BackgroundWorker.WorkerSupportsCancellation = true; BackgroundWorker.DoWork += DownloadCoverBackgroundWorker_DoWork; BackgroundWorker.ProgressChanged += DownloadCoverBackgroundWorker_ProgressChanged; BackgroundWorker.RunWorkerCompleted += DownloadCoverBackgroundWorker_RunWorkerCompleted; }
public void Download(SearchResult searchResult, CoverDownloaderFilters filters) { CoverDownloaderJob job; if (MaxConcurrentJobCount > 1 && TryFindJob(searchResult, out job)) { return; } job = new CoverDownloaderJob(HttpClient, PathFormatter, MetadataKeywordLists, searchResult, filters); job.CoverDownloadReportProgress += Job_CoverDownloadReportProgress; job.CoversDownloadStarted += Job_CoversDownloadStarted; job.CoversDownloadCancelled += Job_CoversDownloadCancelled; job.CoversDownloadCompleted += Job_CoversDownloadCompleted; AddJob(job); }
private static bool ShouldFilter(Metadata metadata, MetadataKeywordLists metadataKeywordLists, CoverDownloaderFilters filters) { if (filters.HasFlag(CoverDownloaderFilters.Hidelist) && metadataKeywordLists.Hidelist.IsInMetadata(metadata)) { return(true); } return(false); }