From 7c38ec2baafbc7d18b4d250d84cc781fdc1e4ddf Mon Sep 17 00:00:00 2001 From: Bogdan Date: Sat, 2 Dec 2023 12:07:40 +0200 Subject: [PATCH] Fixed: (AvistaZ) Improve message for failed logins --- .../Definitions/Avistaz/AvistazBase.cs | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs b/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs index cd09785c61c..56048782599 100644 --- a/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs +++ b/src/NzbDrone.Core/Indexers/Definitions/Avistaz/AvistazBase.cs @@ -7,6 +7,7 @@ using NzbDrone.Common.Http; using NzbDrone.Common.Serializer; using NzbDrone.Core.Configuration; +using NzbDrone.Core.Indexers.Exceptions; using NzbDrone.Core.Messaging.Events; namespace NzbDrone.Core.Indexers.Definitions.Avistaz @@ -54,14 +55,24 @@ public override IParseIndexerResponse GetParser() protected override async Task DoLogin() { - Settings.Token = await GetToken(); - - if (Definition.Id > 0) + try { - _indexerRepository.UpdateSettings((IndexerDefinition)Definition); + Settings.Token = await GetToken(); + + if (Definition.Id > 0) + { + _indexerRepository.UpdateSettings((IndexerDefinition)Definition); + } + + _logger.Debug("Avistaz authentication succeeded."); } + catch (HttpException ex) when (ex.Response.StatusCode == HttpStatusCode.Unauthorized) + { + _logger.Warn(ex, "Failed to authenticate with Avistaz"); - _logger.Debug("Avistaz authentication succeeded."); + var jsonResponse = STJson.Deserialize(ex.Response.Content); + throw new IndexerAuthException(jsonResponse?.Message ?? "Unauthorized request to indexer"); + } } protected override bool CheckIfLoginNeeded(HttpResponse httpResponse)