Example #1
0
        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);
        }
Example #2
0
 public DownloadCoversRunArg(HttpClient httpClient, IPathFormatter pathFormatter, SearchResult searchResult, MetadataKeywordLists metadataKeywordLists, CoverDownloaderFilters filters)
 {
     HttpClient           = httpClient;
     PathFormatter        = pathFormatter;
     SearchResult         = searchResult;
     MetadataKeywordLists = metadataKeywordLists;
     Filters = filters;
 }
Example #3
0
        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;
        }
Example #4
0
        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);
        }
Example #5
0
        private static bool ShouldFilter(Metadata metadata, MetadataKeywordLists metadataKeywordLists, CoverDownloaderFilters filters)
        {
            if (filters.HasFlag(CoverDownloaderFilters.Hidelist) &&
                metadataKeywordLists.Hidelist.IsInMetadata(metadata))
            {
                return(true);
            }

            return(false);
        }