Small improvements to IndexerNoDefinitionCheck

pull/2166/head v1.19.0.4568
Bogdan 9 months ago
parent b27a3d8272
commit 55fa1ec637

@ -1,3 +1,4 @@
using System.Collections.Generic;
using System.Linq;
using NzbDrone.Core.Indexers;
using NzbDrone.Core.Indexers.Definitions.Cardigann;
@ -9,12 +10,12 @@ namespace NzbDrone.Core.HealthCheck.Checks
{
[CheckOn(typeof(ProviderDeletedEvent<IIndexer>))]
[CheckOn(typeof(ProviderBulkDeletedEvent<IIndexer>))]
public class NoDefinitionCheck : HealthCheckBase
public class IndexerNoDefinitionCheck : HealthCheckBase
{
private readonly IIndexerDefinitionUpdateService _indexerDefinitionUpdateService;
private readonly IIndexerFactory _indexerFactory;
public NoDefinitionCheck(IIndexerDefinitionUpdateService indexerDefinitionUpdateService, IIndexerFactory indexerFactory, ILocalizationService localizationService)
public IndexerNoDefinitionCheck(IIndexerDefinitionUpdateService indexerDefinitionUpdateService, IIndexerFactory indexerFactory, ILocalizationService localizationService)
: base(localizationService)
{
_indexerDefinitionUpdateService = indexerDefinitionUpdateService;
@ -23,23 +24,22 @@ namespace NzbDrone.Core.HealthCheck.Checks
public override HealthCheck Check()
{
var currentDefs = _indexerDefinitionUpdateService.All();
var currentDefinitions = _indexerDefinitionUpdateService.All();
var noDefinitionIndexers = _indexerFactory.AllProviders(false)
.Where(i => i.Definition.Implementation == "Cardigann" && currentDefinitions.All(d => d.File != ((CardigannSettings)i.Definition.Settings).DefinitionFile))
.ToList();
var noDefIndexers = _indexerFactory.AllProviders(false)
.Where(i => i.Definition.Implementation == "Cardigann" && currentDefs.All(d => d.File != ((CardigannSettings)i.Definition.Settings).DefinitionFile)).ToList();
if (noDefIndexers.Count == 0)
if (noDefinitionIndexers.Count == 0)
{
return new HealthCheck(GetType());
}
var healthType = HealthCheckResult.Error;
var healthMessage = string.Format(_localizationService.GetLocalizedString("IndexerNoDefCheckMessage"),
string.Join(", ", noDefIndexers.Select(v => v.Definition.Name)));
return new HealthCheck(GetType(),
healthType,
healthMessage,
HealthCheckResult.Error,
_localizationService.GetLocalizedString("IndexerNoDefinitionCheckHealthCheckMessage", new Dictionary<string, object>
{
{ "indexerNames", string.Join(", ", noDefinitionIndexers.Select(v => v.Definition.Name).ToArray()) }
}),
"#indexers-have-no-definition");
}

@ -179,7 +179,7 @@
"IndexerLongTermStatusAllUnavailableHealthCheckMessage": "Alle Indexer sind wegen über 6 Stunden langen bestehender Fehler nicht verfügbar",
"IndexerLongTermStatusUnavailableHealthCheckMessage": "Indexer wegen über 6 Stunden langen bestehenden Fehlern nicht verfügbar: {indexerNames}",
"IndexerName": "Indexer-Name",
"IndexerNoDefCheckMessage": "Indexer haben keine Definition und werden nicht funktionieren: {0}. Bitte entferne und (oder) füge diese neu zu {appName} hinzu",
"IndexerNoDefinitionCheckHealthCheckMessage": "Indexer haben keine Definition und werden nicht funktionieren: {0}. Bitte entferne und (oder) füge diese neu zu {appName} hinzu",
"IndexerObsoleteCheckMessage": "Indexer sind nicht mehr verfügbar oder wurden aktualiiert: {0}. Bitte enfernen und (oder) neu zu {appName} hinzufügen",
"IndexerPriority": "Priorität",
"IndexerPriorityHelpText": "Indexer Priorität von 1 (höchste) bis 50 (niedrigste). Standard: 25.",

@ -431,7 +431,7 @@
"IndexerInfo": "Πληροφορίες ευρετηρίου",
"IndexerName": "Όνομα ευρετηρίου",
"IndexerProxies": "Proxer Indexer",
"IndexerNoDefCheckMessage": "Τα ευρετήρια δεν έχουν ορισμό και δεν θα λειτουργήσουν: {0}. Αφαιρέστε και (ή) προσθέστε ξανά στο {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Τα ευρετήρια δεν έχουν ορισμό και δεν θα λειτουργήσουν: {0}. Αφαιρέστε και (ή) προσθέστε ξανά στο {appName}",
"SemiPrivate": "Ημι-ιδιωτικό",
"SettingsIndexerLoggingHelpText": "Καταγραφή πρόσθετων δεδομένων ευρετηρίου συμπεριλαμβανομένης της απόκρισης",
"SearchTypes": "Τύποι αναζήτησης",

@ -368,7 +368,7 @@
"IndexerNewznabSettingsAdditionalParametersHelpText": "Additional Newznab parameters",
"IndexerNewznabSettingsApiKeyHelpText": "Site API Key",
"IndexerNewznabSettingsVipExpirationHelpText": "Enter date (yyyy-mm-dd) for VIP Expiration or blank, {appName} will notify 1 week from expiration of VIP",
"IndexerNoDefCheckMessage": "Indexers have no definition and will not work: {0}. Please remove and (or) re-add to {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Indexers have no definition and will not work: {indexerNames}. Please remove and (or) re-add to {appName}.",
"IndexerNzbIndexSettingsApiKeyHelpText": "Site API Key",
"IndexerObsoleteCheckMessage": "Indexers are obsolete or have been updated: {0}. Please remove and (or) re-add to {appName}",
"IndexerOrpheusSettingsApiKeyHelpText": "API Key from the Site (Found in Settings => Access Settings)",

@ -517,7 +517,7 @@
"IndexerTagsHelpTextWarning": "Las etiquetas deben utilizarse con precaución, ya que pueden tener efectos no deseados. Un indexador con una etiqueta solo se sincronizará con aplicaciones que tengan la misma etiqueta.",
"TVSearchTypes": "Tipos de búsqueda de TV",
"DownloadClientAriaSettingsDirectoryHelpText": "Ubicación opcional en la que poner las descargas, dejar en blanco para usar la ubicación de Aria2 predeterminada",
"IndexerNoDefCheckMessage": "Los indexadores no tienen definición y no funcionarán: {0}. Por favor elimínelos y (o) vuelva a añadirlos a {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Los indexadores no tienen definición y no funcionarán: {0}. Por favor elimínelos y (o) vuelva a añadirlos a {appName}",
"IndexerProxy": "Proxy del Indexador",
"IndexerObsoleteCheckMessage": "Los indexadores están obsoletos o se han actualizado: {0}. Por favor elimínelos y (o) vuelva a añadirlos a {appName}",
"IncludeManualGrabsHelpText": "Incluir las Capturas Manuales realizadas en {appName}",

@ -405,7 +405,7 @@
"ApplicationsLoadError": "Sovelluslistausta ei voitu ladata",
"Url": "URL",
"Website": "Verkkosivusto",
"IndexerNoDefCheckMessage": "Tietolähteillä ei ole määritystä, eivätkä ne toimi: {0}. Poista ja/tai lisää {appName}iin uudelleen",
"IndexerNoDefinitionCheckHealthCheckMessage": "Tietolähteillä ei ole määritystä, eivätkä ne toimi: {0}. Poista ja/tai lisää {appName}iin uudelleen",
"Private": "Yksityinen",
"QueryResults": "Kyselyn tulokset",
"Application": "Sovellus",

@ -406,7 +406,7 @@
"BookSearch": "Recherche de livres",
"OnApplicationUpdate": "Sur la mise à jour de l'application",
"OnApplicationUpdateHelpText": "Lors de la mise à jour de l'app",
"IndexerNoDefCheckMessage": "Les indexeurs ne sont pas définis et ne fonctionneront pas : {0}. Merci de les retirer et (ou) les ajouter à nouveau à {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Les indexeurs ne sont pas définis et ne fonctionneront pas: {indexerNames}. Merci de les retirer et (ou) les ajouter à nouveau à {appName}",
"MovieSearch": "Recherche de films",
"TvSearch": "Recherche de séries TV",
"Application": "Applications",

@ -393,7 +393,7 @@
"HistoryCleanupDaysHelpTextWarning": "A kiválasztott napszámnál régebbi előzmények automatikusan törlődnek",
"IndexerAlreadySetup": "Az indexelő legalább egy példánya már be van állítva",
"IndexerInfo": "Indexer információ",
"IndexerNoDefCheckMessage": "Az indexereknek nincs definíciójuk, és nem működnek: {0}. Kérjük, távolítsa el és (vagy) adja hozzá újra a {appName}hoz",
"IndexerNoDefinitionCheckHealthCheckMessage": "Az indexereknek nincs definíciójuk, és nem működnek: {0}. Kérjük, távolítsa el és (vagy) adja hozzá újra a {appName}hoz",
"MassEditor": "Tömeges szerkesztő",
"OnApplicationUpdate": "Alkalmazásfrissítésről",
"OnApplicationUpdateHelpText": "Alkalmazásfrissítésről",

@ -385,7 +385,7 @@
"IndexerDetails": "Dettagli dell'Indicizzatore",
"IndexerInfo": "Info sull'Indicizzatore",
"IndexerName": "Nome dell'Indicizzatore",
"IndexerNoDefCheckMessage": "Gli indicizzatori non hanno una definizione e non funzioneranno: {0}. Si prega di rimuoverli e/o di riaggiungerli a {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Gli indicizzatori non hanno una definizione e non funzioneranno: {0}. Si prega di rimuoverli e/o di riaggiungerli a {appName}",
"HistoryCleanup": "Pulizia della Cronologia",
"IndexerRss": "RSS dell'Indicizzatore",
"IndexerSite": "Sito dell'Indicizzatore",

@ -201,7 +201,7 @@
"IndexerLongTermStatusAllUnavailableHealthCheckMessage": "Todos os indexadores estão indisponíveis devido a falhas por mais de 6 horas",
"IndexerLongTermStatusUnavailableHealthCheckMessage": "Indexadores indisponíveis devido a falhas por mais de 6 horas: {indexerNames}",
"IndexerName": "Nome do Indexador",
"IndexerNoDefCheckMessage": "Os indexadores não têm definição e não funcionarão: {0}. Por favor, remova e (ou) adicione novamente ao {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Os indexadores não têm definição e não funcionarão: {0}. Por favor, remova e (ou) adicione novamente ao {appName}",
"IndexerObsoleteCheckMessage": "Os seguintes indexadores são obsoletos ou foram atualizados: {0}. Remova-os e/ou adicione-os novamente ao {appName}",
"IndexerPriority": "Prioridade do indexador",
"IndexerPriorityHelpText": "Prioridade do Indexador de 1 (Mais Alta) a 50 (Mais Baixa). Padrão: 25.",

@ -329,7 +329,7 @@
"IndexerHealthCheckNoIndexers": "Niciun indexator nu este activat, {appName} nu va returna rezultate la căutare.",
"IndexerProxy": "Proxy indexator",
"IndexerVipExpiredHealthCheckMessage": "Beneficiile VIP pentru indexator au expirat: {indexerNames}",
"IndexerNoDefCheckMessage": "Indexatorii nu au definiție și nu vor funcționa: {0}. Vă rugăm să-i ștergeți și (sau) să-i adăugați din nou în {appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "Indexatorii nu au definiție și nu vor funcționa: {0}. Vă rugăm să-i ștergeți și (sau) să-i adăugați din nou în {appName}",
"IndexerRss": "RSS indexator",
"EnabledRedirected": "Activat, Redirecționat",
"Ended": "Încheiat",

@ -200,7 +200,7 @@
"IndexerLongTermStatusAllUnavailableHealthCheckMessage": "由于故障超过6小时所有搜刮器均不可用",
"IndexerLongTermStatusUnavailableHealthCheckMessage": "由于故障6小时下列搜刮器都已不可用{indexerNames}",
"IndexerName": "‎索引‎‎名字‎",
"IndexerNoDefCheckMessage": "索引器没有定义,将无法工作: {0}. 请删除或重新添加到{appName}",
"IndexerNoDefinitionCheckHealthCheckMessage": "索引器没有定义,将无法工作: {0}. 请删除或重新添加到{appName}",
"IndexerObsoleteCheckMessage": "搜刮器已过弃用或已更新:{0}。请将其删除和(或)重新添加到 {appName}",
"IndexerPriority": "搜刮器优先级",
"IndexerPriorityHelpText": "索引器优先级从1(最高)到50(最低)默认25。",

Loading…
Cancel
Save