示例#1
0
        private IList <ReleaseInfo> Fetch(IIndexer indexer, SeasonSearchCriteria searchCriteria, int offset)
        {
            var searchUrls = indexer.GetSeasonSearchUrls(searchCriteria.QueryTitles, searchCriteria.Series.TvRageId, searchCriteria.SeasonNumber, offset).ToList();

            if (searchUrls.Any())
            {
                _logger.Debug("Searching for {0} offset: {1}", searchCriteria, offset);

                var result = Fetch(indexer, searchUrls);

                _logger.Info("{0} offset {1}. Found {2}", indexer, offset, result.Count);

                if (indexer.SupportsPaging && result.Count >= indexer.SupportedPageSize && offset < 900)
                {
                    result.AddRange(Fetch(indexer, searchCriteria, offset + indexer.SupportedPageSize));
                }

                //Only log finish for the first call to this recursive method
                if (offset == 0)
                {
                    _logger.Info("Finished searching {0} for {1}. Found {2}", indexer, searchCriteria, result.Count);
                }

                return(result);
            }

            return(new List <ReleaseInfo>());
        }
        private IList<ReleaseInfo> Fetch(IIndexer indexer, SeasonSearchCriteria searchCriteria, int offset)
        {
            _logger.Debug("Searching for {0} offset: {1}", searchCriteria, offset);

            var searchUrls = indexer.GetSeasonSearchUrls(searchCriteria.QueryTitle, searchCriteria.Series.TvRageId, searchCriteria.SeasonNumber, offset);
            var result = Fetch(indexer, searchUrls);


            _logger.Info("{0} offset {1}. Found {2}", indexer, searchCriteria, result.Count);

            if (result.Count > 90)
            {
                result.AddRange(Fetch(indexer, searchCriteria, offset + 90));
            }

            return result;
        }
        private IList <ReleaseInfo> Fetch(IIndexer indexer, SeasonSearchCriteria searchCriteria, int offset)
        {
            _logger.Debug("Searching for {0} offset: {1}", searchCriteria, offset);

            var searchUrls = indexer.GetSeasonSearchUrls(searchCriteria.QueryTitle, searchCriteria.Series.TvRageId, searchCriteria.SeasonNumber, offset);
            var result     = Fetch(indexer, searchUrls);


            _logger.Info("{0} offset {1}. Found {2}", indexer.Name, searchCriteria, result.Count);

            if (result.Count > 90)
            {
                result.AddRange(Fetch(indexer, searchCriteria, offset + 90));
            }

            return(result);
        }