1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2026-04-21 22:05:38 -04:00

Improve indexer health check messages

Fixed: Improve health check message when all enabled indexers are disabled due to failures
Closes #1551
This commit is contained in:
Mark McDowall
2017-02-27 23:49:55 -08:00
parent 1dab0aee6a
commit 79043f2c64
4 changed files with 31 additions and 17 deletions
+14 -10
View File
@@ -9,14 +9,13 @@ namespace NzbDrone.Core.Indexers
{
public interface IIndexerFactory : IProviderFactory<IIndexer, IndexerDefinition>
{
List<IIndexer> RssEnabled();
List<IIndexer> SearchEnabled();
List<IIndexer> RssEnabled(bool filterBlockedIndexers = true);
List<IIndexer> SearchEnabled(bool filterBlockedIndexers = true);
}
public class IndexerFactory : ProviderFactory<IIndexer, IndexerDefinition>, IIndexerFactory
{
private readonly IIndexerStatusService _indexerStatusService;
private readonly IIndexerRepository _providerRepository;
private readonly Logger _logger;
public IndexerFactory(IIndexerStatusService indexerStatusService,
@@ -28,7 +27,6 @@ namespace NzbDrone.Core.Indexers
: base(providerRepository, providers, container, eventAggregator, logger)
{
_indexerStatusService = indexerStatusService;
_providerRepository = providerRepository;
_logger = logger;
}
@@ -46,22 +44,28 @@ namespace NzbDrone.Core.Indexers
definition.SupportsSearch = provider.SupportsSearch;
}
public List<IIndexer> RssEnabled()
public List<IIndexer> RssEnabled(bool filterBlockedIndexers = true)
{
var enabledIndexers = GetAvailableProviders().Where(n => ((IndexerDefinition)n.Definition).EnableRss);
var indexers = FilterBlockedIndexers(enabledIndexers);
if (filterBlockedIndexers)
{
return FilterBlockedIndexers(enabledIndexers).ToList();
}
return indexers.ToList();
return enabledIndexers.ToList();
}
public List<IIndexer> SearchEnabled()
public List<IIndexer> SearchEnabled(bool filterBlockedIndexers = true)
{
var enabledIndexers = GetAvailableProviders().Where(n => ((IndexerDefinition)n.Definition).EnableSearch);
var indexers = FilterBlockedIndexers(enabledIndexers);
if (filterBlockedIndexers)
{
return FilterBlockedIndexers(enabledIndexers).ToList();
}
return indexers.ToList();
return enabledIndexers.ToList();
}
private IEnumerable<IIndexer> FilterBlockedIndexers(IEnumerable<IIndexer> indexers)