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

            foreach (var book in books)
            {
                List <DownloadDecision> decisions;
                decisions = _nzbSearchService.BookSearch(book.Id, false, userInvokedSearch, false);
                var processed = _processDownloadDecisions.ProcessDecisions(decisions);

                downloadedCount += processed.Grabbed.Count;
            }

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

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

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

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