public AugmentQualityResult AugmentQuality(LocalEpisode localEpisode, DownloadClientItem downloadClientItem) { // Don't try to augment if we can't lookup the grabbed history by downloadId if (downloadClientItem == null) { return(null); } var history = _downloadHistoryService.GetLatestGrab(downloadClientItem.DownloadId); if (history == null) { return(null); } var historyQuality = QualityParser.ParseQuality(history.SourceTitle); var sourceConfidence = historyQuality.SourceDetectionSource == QualityDetectionSource.Name ? Confidence.Tag : Confidence.Fallback; var resolutionConfidence = historyQuality.ResolutionDetectionSource == QualityDetectionSource.Name ? Confidence.Tag : Confidence.Fallback; var revisionConfidence = historyQuality.RevisionDetectionSource == QualityDetectionSource.Name ? Confidence.Tag : Confidence.Fallback; return(new AugmentQualityResult(historyQuality.Quality.Source, sourceConfidence, historyQuality.Quality.Resolution, resolutionConfidence, historyQuality.Revision, revisionConfidence)); }
private CachedSeedConfiguration FetchIndexer(string infoHash) { var historyItem = _downloadHistoryService.GetLatestGrab(infoHash); if (historyItem == null) { _logger.Debug("No download history item for infohash {0}, unable to provide seed configuration", infoHash); return(null); } ParsedBookInfo parsedBookInfo = null; if (historyItem.Release != null) { parsedBookInfo = Parser.Parser.ParseBookTitle(historyItem.Release.Title); } if (parsedBookInfo == null) { _logger.Debug("No parsed title in download history item for infohash {0}, unable to provide seed configuration", infoHash); return(null); } return(new CachedSeedConfiguration { IndexerId = historyItem.IndexerId, Discography = parsedBookInfo.Discography }); }