mirror of
https://github.com/Prowlarr/Prowlarr.git
synced 2025-09-17 17:14:18 +02:00
Rename ISearchForNzb to IReleaseSearchService
This commit is contained in:
@@ -14,12 +14,12 @@ using NzbDrone.Core.Parser.Model;
|
|||||||
|
|
||||||
namespace NzbDrone.Core.IndexerSearch
|
namespace NzbDrone.Core.IndexerSearch
|
||||||
{
|
{
|
||||||
public interface ISearchForNzb
|
public interface IReleaseSearchService
|
||||||
{
|
{
|
||||||
Task<NewznabResults> Search(NewznabRequest request, List<int> indexerIds, bool interactiveSearch);
|
Task<NewznabResults> Search(NewznabRequest request, List<int> indexerIds, bool interactiveSearch);
|
||||||
}
|
}
|
||||||
|
|
||||||
public class ReleaseSearchService : ISearchForNzb
|
public class ReleaseSearchService : IReleaseSearchService
|
||||||
{
|
{
|
||||||
private readonly IIndexerLimitService _indexerLimitService;
|
private readonly IIndexerLimitService _indexerLimitService;
|
||||||
private readonly IEventAggregator _eventAggregator;
|
private readonly IEventAggregator _eventAggregator;
|
||||||
@@ -222,28 +222,28 @@ namespace NzbDrone.Core.IndexerSearch
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (criteriaBase.MinAge.HasValue && criteriaBase.MinAge.Value > 0)
|
if (criteriaBase.MinAge is > 0)
|
||||||
{
|
{
|
||||||
var cutoffDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(criteriaBase.MinAge.Value));
|
var cutoffDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(criteriaBase.MinAge.Value));
|
||||||
|
|
||||||
releases = releases.Where(r => r.PublishDate <= cutoffDate).ToList();
|
releases = releases.Where(r => r.PublishDate <= cutoffDate).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (criteriaBase.MaxAge.HasValue && criteriaBase.MaxAge.Value > 0)
|
if (criteriaBase.MaxAge is > 0)
|
||||||
{
|
{
|
||||||
var cutoffDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(criteriaBase.MaxAge.Value));
|
var cutoffDate = DateTime.UtcNow.Subtract(TimeSpan.FromDays(criteriaBase.MaxAge.Value));
|
||||||
|
|
||||||
releases = releases.Where(r => r.PublishDate >= cutoffDate).ToList();
|
releases = releases.Where(r => r.PublishDate >= cutoffDate).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (criteriaBase.MinSize.HasValue && criteriaBase.MinSize.Value > 0)
|
if (criteriaBase.MinSize is > 0)
|
||||||
{
|
{
|
||||||
var minSize = criteriaBase.MinSize.Value;
|
var minSize = criteriaBase.MinSize.Value;
|
||||||
|
|
||||||
releases = releases.Where(r => r.Size >= minSize).ToList();
|
releases = releases.Where(r => r.Size >= minSize).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (criteriaBase.MaxSize.HasValue && criteriaBase.MaxSize.Value > 0)
|
if (criteriaBase.MaxSize is > 0)
|
||||||
{
|
{
|
||||||
var maxSize = criteriaBase.MaxSize.Value;
|
var maxSize = criteriaBase.MaxSize.Value;
|
||||||
|
|
||||||
|
@@ -30,7 +30,7 @@ namespace NzbDrone.Api.V1.Indexers
|
|||||||
public class NewznabController : Controller
|
public class NewznabController : Controller
|
||||||
{
|
{
|
||||||
private IIndexerFactory _indexerFactory { get; set; }
|
private IIndexerFactory _indexerFactory { get; set; }
|
||||||
private ISearchForNzb _nzbSearchService { get; set; }
|
private IReleaseSearchService _releaseSearchService { get; set; }
|
||||||
private IIndexerLimitService _indexerLimitService { get; set; }
|
private IIndexerLimitService _indexerLimitService { get; set; }
|
||||||
private IIndexerStatusService _indexerStatusService;
|
private IIndexerStatusService _indexerStatusService;
|
||||||
private IDownloadMappingService _downloadMappingService { get; set; }
|
private IDownloadMappingService _downloadMappingService { get; set; }
|
||||||
@@ -38,7 +38,7 @@ namespace NzbDrone.Api.V1.Indexers
|
|||||||
private readonly Logger _logger;
|
private readonly Logger _logger;
|
||||||
|
|
||||||
public NewznabController(IndexerFactory indexerFactory,
|
public NewznabController(IndexerFactory indexerFactory,
|
||||||
ISearchForNzb nzbSearchService,
|
IReleaseSearchService releaseSearchService,
|
||||||
IIndexerLimitService indexerLimitService,
|
IIndexerLimitService indexerLimitService,
|
||||||
IIndexerStatusService indexerStatusService,
|
IIndexerStatusService indexerStatusService,
|
||||||
IDownloadMappingService downloadMappingService,
|
IDownloadMappingService downloadMappingService,
|
||||||
@@ -46,7 +46,7 @@ namespace NzbDrone.Api.V1.Indexers
|
|||||||
Logger logger)
|
Logger logger)
|
||||||
{
|
{
|
||||||
_indexerFactory = indexerFactory;
|
_indexerFactory = indexerFactory;
|
||||||
_nzbSearchService = nzbSearchService;
|
_releaseSearchService = releaseSearchService;
|
||||||
_indexerLimitService = indexerLimitService;
|
_indexerLimitService = indexerLimitService;
|
||||||
_indexerStatusService = indexerStatusService;
|
_indexerStatusService = indexerStatusService;
|
||||||
_downloadMappingService = downloadMappingService;
|
_downloadMappingService = downloadMappingService;
|
||||||
@@ -156,7 +156,7 @@ namespace NzbDrone.Api.V1.Indexers
|
|||||||
return CreateResponse(CreateErrorXML(429, $"Indexer is disabled till {blockedIndexerStatus.DisabledTill.Value.ToLocalTime()} due to recent failures."), statusCode: StatusCodes.Status429TooManyRequests);
|
return CreateResponse(CreateErrorXML(429, $"Indexer is disabled till {blockedIndexerStatus.DisabledTill.Value.ToLocalTime()} due to recent failures."), statusCode: StatusCodes.Status429TooManyRequests);
|
||||||
}
|
}
|
||||||
|
|
||||||
//TODO Optimize this so it's not called here and in NzbSearchService (for manual search)
|
// TODO Optimize this so it's not called here and in ReleaseSearchService (for manual search)
|
||||||
if (_indexerLimitService.AtQueryLimit(indexerDef))
|
if (_indexerLimitService.AtQueryLimit(indexerDef))
|
||||||
{
|
{
|
||||||
var retryAfterQueryLimit = _indexerLimitService.CalculateRetryAfterQueryLimit(indexerDef);
|
var retryAfterQueryLimit = _indexerLimitService.CalculateRetryAfterQueryLimit(indexerDef);
|
||||||
@@ -178,7 +178,7 @@ namespace NzbDrone.Api.V1.Indexers
|
|||||||
case "music":
|
case "music":
|
||||||
case "book":
|
case "book":
|
||||||
case "movie":
|
case "movie":
|
||||||
var results = await _nzbSearchService.Search(request, new List<int> { indexerDef.Id }, false);
|
var results = await _releaseSearchService.Search(request, new List<int> { indexerDef.Id }, false);
|
||||||
|
|
||||||
foreach (var result in results.Releases)
|
foreach (var result in results.Releases)
|
||||||
{
|
{
|
||||||
|
@@ -23,7 +23,7 @@ namespace Prowlarr.Api.V1.Search
|
|||||||
[V1ApiController]
|
[V1ApiController]
|
||||||
public class SearchController : RestController<ReleaseResource>
|
public class SearchController : RestController<ReleaseResource>
|
||||||
{
|
{
|
||||||
private readonly ISearchForNzb _nzbSearhService;
|
private readonly IReleaseSearchService _releaseSearchService;
|
||||||
private readonly IDownloadService _downloadService;
|
private readonly IDownloadService _downloadService;
|
||||||
private readonly IIndexerFactory _indexerFactory;
|
private readonly IIndexerFactory _indexerFactory;
|
||||||
private readonly IDownloadMappingService _downloadMappingService;
|
private readonly IDownloadMappingService _downloadMappingService;
|
||||||
@@ -31,9 +31,9 @@ namespace Prowlarr.Api.V1.Search
|
|||||||
|
|
||||||
private readonly ICached<ReleaseInfo> _remoteReleaseCache;
|
private readonly ICached<ReleaseInfo> _remoteReleaseCache;
|
||||||
|
|
||||||
public SearchController(ISearchForNzb nzbSearhService, IDownloadService downloadService, IIndexerFactory indexerFactory, IDownloadMappingService downloadMappingService, ICacheManager cacheManager, Logger logger)
|
public SearchController(IReleaseSearchService releaseSearchService, IDownloadService downloadService, IIndexerFactory indexerFactory, IDownloadMappingService downloadMappingService, ICacheManager cacheManager, Logger logger)
|
||||||
{
|
{
|
||||||
_nzbSearhService = nzbSearhService;
|
_releaseSearchService = releaseSearchService;
|
||||||
_downloadService = downloadService;
|
_downloadService = downloadService;
|
||||||
_indexerFactory = indexerFactory;
|
_indexerFactory = indexerFactory;
|
||||||
_downloadMappingService = downloadMappingService;
|
_downloadMappingService = downloadMappingService;
|
||||||
@@ -143,7 +143,7 @@ namespace Prowlarr.Api.V1.Search
|
|||||||
|
|
||||||
request.QueryToParams();
|
request.QueryToParams();
|
||||||
|
|
||||||
var result = await _nzbSearhService.Search(request, payload.IndexerIds, true);
|
var result = await _releaseSearchService.Search(request, payload.IndexerIds, true);
|
||||||
var releases = result.Releases;
|
var releases = result.Releases;
|
||||||
|
|
||||||
return MapReleases(releases, Request.GetServerUrl());
|
return MapReleases(releases, Request.GetServerUrl());
|
||||||
|
@@ -169,7 +169,7 @@ namespace Prowlarr.Http.Extensions
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Front-End-Https: Non-standard header field used by Microsoft applications and load-balancers
|
// Front-End-Https: Non-standard header field used by Microsoft applications and load-balancers
|
||||||
else if (request.Headers.Where(x => x.Key == "Front-End-Https" && x.Value.FirstOrDefault() == "on").Any())
|
else if (request.Headers.Any(x => x.Key == "Front-End-Https" && x.Value.FirstOrDefault() == "on"))
|
||||||
{
|
{
|
||||||
scheme = "https";
|
scheme = "https";
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user