Fixed: Ensure failing indexers are marked as failed when testing all

pull/5854/head
Bogdan 11 months ago committed by GitHub
parent ad0dc01cf7
commit b407eba612
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -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
@ -162,5 +161,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;
}
}
} }
} }

@ -20,7 +20,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()
{ {
@ -46,12 +52,6 @@ namespace NzbDrone.Core.Indexers.Torznab
} }
} }
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
@ -169,5 +169,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…
Cancel
Save