mirror of
https://github.com/lidarr/lidarr.git
synced 2025-08-20 05:23:31 -07:00
Fixed: Ensure failing indexers are marked as failed when testing all
(cherry picked from commit b407eba61284d5fb855df6a2868805853aa6f448) Closes #3934
This commit is contained in:
parent
36016c7c88
commit
a08b9e4f64
3 changed files with 47 additions and 15 deletions
|
@ -102,10 +102,19 @@ namespace NzbDrone.Core.Indexers
|
||||||
{
|
{
|
||||||
var result = base.Test(definition);
|
var result = base.Test(definition);
|
||||||
|
|
||||||
if ((result == null || result.IsValid) && definition.Id != 0)
|
if (definition.Id == 0)
|
||||||
|
{
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (result == null || result.IsValid)
|
||||||
{
|
{
|
||||||
_indexerStatusService.RecordSuccess(definition.Id);
|
_indexerStatusService.RecordSuccess(definition.Id);
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
_indexerStatusService.RecordFailure(definition.Id);
|
||||||
|
}
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,8 +19,13 @@ namespace NzbDrone.Core.Indexers.Newznab
|
||||||
public override string Name => "Newznab";
|
public override string Name => "Newznab";
|
||||||
|
|
||||||
public override DownloadProtocol Protocol => DownloadProtocol.Usenet;
|
public override DownloadProtocol Protocol => DownloadProtocol.Usenet;
|
||||||
|
public override int PageSize => GetProviderPageSize();
|
||||||
|
|
||||||
public override int PageSize => Math.Min(100, Math.Max(_capabilitiesProvider.GetCapabilities(Settings).DefaultPageSize, _capabilitiesProvider.GetCapabilities(Settings).MaxPageSize));
|
public Newznab(INewznabCapabilitiesProvider capabilitiesProvider, IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
|
||||||
|
: base(httpClient, indexerStatusService, configService, parsingService, logger)
|
||||||
|
{
|
||||||
|
_capabilitiesProvider = capabilitiesProvider;
|
||||||
|
}
|
||||||
|
|
||||||
public override IIndexerRequestGenerator GetRequestGenerator()
|
public override IIndexerRequestGenerator GetRequestGenerator()
|
||||||
{
|
{
|
||||||
|
@ -54,12 +59,6 @@ namespace NzbDrone.Core.Indexers.Newznab
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public Newznab(INewznabCapabilitiesProvider capabilitiesProvider, IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
|
|
||||||
: base(httpClient, indexerStatusService, configService, parsingService, logger)
|
|
||||||
{
|
|
||||||
_capabilitiesProvider = capabilitiesProvider;
|
|
||||||
}
|
|
||||||
|
|
||||||
private IndexerDefinition GetDefinition(string name, NewznabSettings settings)
|
private IndexerDefinition GetDefinition(string name, NewznabSettings settings)
|
||||||
{
|
{
|
||||||
return new IndexerDefinition
|
return new IndexerDefinition
|
||||||
|
@ -163,5 +162,17 @@ namespace NzbDrone.Core.Indexers.Newznab
|
||||||
|
|
||||||
return base.RequestAction(action, query);
|
return base.RequestAction(action, query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int GetProviderPageSize()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return Math.Min(100, Math.Max(_capabilitiesProvider.GetCapabilities(Settings).DefaultPageSize, _capabilitiesProvider.GetCapabilities(Settings).MaxPageSize));
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
return 100;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,13 @@ namespace NzbDrone.Core.Indexers.Torznab
|
||||||
public override string Name => "Torznab";
|
public override string Name => "Torznab";
|
||||||
|
|
||||||
public override DownloadProtocol Protocol => DownloadProtocol.Torrent;
|
public override DownloadProtocol Protocol => DownloadProtocol.Torrent;
|
||||||
public override int PageSize => Math.Min(100, Math.Max(_capabilitiesProvider.GetCapabilities(Settings).DefaultPageSize, _capabilitiesProvider.GetCapabilities(Settings).MaxPageSize));
|
public override int PageSize => GetProviderPageSize();
|
||||||
|
|
||||||
|
public Torznab(INewznabCapabilitiesProvider capabilitiesProvider, IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
|
||||||
|
: base(httpClient, indexerStatusService, configService, parsingService, logger)
|
||||||
|
{
|
||||||
|
_capabilitiesProvider = capabilitiesProvider;
|
||||||
|
}
|
||||||
|
|
||||||
public override IIndexerRequestGenerator GetRequestGenerator()
|
public override IIndexerRequestGenerator GetRequestGenerator()
|
||||||
{
|
{
|
||||||
|
@ -35,12 +41,6 @@ namespace NzbDrone.Core.Indexers.Torznab
|
||||||
return new TorznabRssParser();
|
return new TorznabRssParser();
|
||||||
}
|
}
|
||||||
|
|
||||||
public Torznab(INewznabCapabilitiesProvider capabilitiesProvider, IHttpClient httpClient, IIndexerStatusService indexerStatusService, IConfigService configService, IParsingService parsingService, Logger logger)
|
|
||||||
: base(httpClient, indexerStatusService, configService, parsingService, logger)
|
|
||||||
{
|
|
||||||
_capabilitiesProvider = capabilitiesProvider;
|
|
||||||
}
|
|
||||||
|
|
||||||
private IndexerDefinition GetDefinition(string name, TorznabSettings settings)
|
private IndexerDefinition GetDefinition(string name, TorznabSettings settings)
|
||||||
{
|
{
|
||||||
return new IndexerDefinition
|
return new IndexerDefinition
|
||||||
|
@ -147,5 +147,17 @@ namespace NzbDrone.Core.Indexers.Torznab
|
||||||
|
|
||||||
return base.RequestAction(action, query);
|
return base.RequestAction(action, query);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int GetProviderPageSize()
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return Math.Min(100, Math.Max(_capabilitiesProvider.GetCapabilities(Settings).DefaultPageSize, _capabilitiesProvider.GetCapabilities(Settings).MaxPageSize));
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
return 100;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue