示例#1
0
        private void SearchForMissingAlbums(List <Album> albums, bool userInvokedSearch)
        {
            _logger.ProgressInfo("Performing missing search for {0} albums", albums.Count);
            var downloadedCount = 0;

            foreach (var album in albums)
            {
                List <DownloadDecision> decisions;
                decisions = _nzbSearchService.AlbumSearch(album.Id, false, userInvokedSearch, false);
                var processed = _processDownloadDecisions.ProcessDecisions(decisions);

                downloadedCount += processed.Grabbed.Count;
            }

            _logger.ProgressInfo("Completed missing search for {0} albums. {1} reports downloaded.", albums.Count, downloadedCount);
        }
示例#2
0
        private List <ReleaseResource> GetAlbumReleases(int albumId)
        {
            try
            {
                var decisions            = _nzbSearchService.AlbumSearch(albumId, true, true, true);
                var prioritizedDecisions = _prioritizeDownloadDecision.PrioritizeDecisions(decisions);

                return(MapDecisions(prioritizedDecisions));
            }
            catch (Exception ex)
            {
                _logger.Error(ex, "Album search failed");
                throw new NzbDroneClientException(HttpStatusCode.InternalServerError, ex.Message);
            }
        }
示例#3
0
        private List <ReleaseResource> GetAlbumReleases(int albumId)
        {
            try
            {
                var decisions            = _nzbSearchService.AlbumSearch(albumId, true, true, true);
                var prioritizedDecisions = _prioritizeDownloadDecision.PrioritizeDecisions(decisions);

                return(MapDecisions(prioritizedDecisions));
            }
            catch (Exception ex)
            {
                _logger.Error(ex, "Album search failed");
            }

            return(new List <ReleaseResource>());
        }