diff --git a/src/Jackett/IndexerInterface.cs b/src/Jackett/IndexerInterface.cs index 347cd4d2f..e421d25d3 100644 --- a/src/Jackett/IndexerInterface.cs +++ b/src/Jackett/IndexerInterface.cs @@ -20,9 +20,6 @@ namespace Jackett // Called when web API wants to apply setup configuration via web API, usually this is where login and storing cookie happens Task ApplyConfiguration(JToken configJson); - // Called to check if configuration (cookie) is correct and indexer connection works - Task VerifyConnection(); - // Invoked when the indexer configuration has been applied and verified so the cookie needs to be saved event Action OnSaveConfigurationRequested; diff --git a/src/Jackett/IndexerManager.cs b/src/Jackett/IndexerManager.cs index 520210922..e8207ff44 100644 --- a/src/Jackett/IndexerManager.cs +++ b/src/Jackett/IndexerManager.cs @@ -85,5 +85,13 @@ namespace Jackett LoadMissingIndexers(); } + public async Task TestIndexer(IndexerInterface indexer) + { + var browseQuery = new TorznabQuery(); + var results = await indexer.PerformQuery(browseQuery); + if (results.Length == 0) + throw new Exception("Found no results while trying to browse this tracker"); + } + } } diff --git a/src/Jackett/Indexers/BitHdtv.cs b/src/Jackett/Indexers/BitHdtv.cs index 54693ce56..e93f4d504 100644 --- a/src/Jackett/Indexers/BitHdtv.cs +++ b/src/Jackett/Indexers/BitHdtv.cs @@ -97,14 +97,6 @@ namespace Jackett.Indexers } } - public async Task VerifyConnection() - { - var browseQuery = new TorznabQuery(); - var results = await PerformQuery(browseQuery); - if (results.Length == 0) - throw new Exception("Found no results while trying to browse this tracker"); - } - public event Action OnSaveConfigurationRequested; public bool IsConfigured { get; private set; } diff --git a/src/Jackett/Indexers/BitMeTV.cs b/src/Jackett/Indexers/BitMeTV.cs index c7e436530..ebcd31ef2 100644 --- a/src/Jackett/Indexers/BitMeTV.cs +++ b/src/Jackett/Indexers/BitMeTV.cs @@ -118,13 +118,6 @@ namespace Jackett } } - public async Task VerifyConnection() - { - var result = await client.GetStringAsync(new Uri(SearchUrl)); - if (result.Contains("

Not logged in!

")) - throw new Exception("Detected as not logged in"); - } - public void LoadFromSavedConfiguration(JToken jsonConfig) { cookies.FillFromJson(new Uri(BaseUrl), (JArray)jsonConfig["cookies"]); diff --git a/src/Jackett/Indexers/Freshon.cs b/src/Jackett/Indexers/Freshon.cs index 50e3ddbbe..742500f5b 100644 --- a/src/Jackett/Indexers/Freshon.cs +++ b/src/Jackett/Indexers/Freshon.cs @@ -102,16 +102,6 @@ namespace Jackett } } - public async Task VerifyConnection() - { - var message = CreateHttpRequest(new Uri(SearchUrl)); - - var response = await client.SendAsync(message); - var result = await response.Content.ReadAsStringAsync(); - if (!result.Contains("/logout.php")) - throw new Exception("Detected as not logged in"); - } - public void LoadFromSavedConfiguration(JToken jsonConfig) { cookies.FillFromJson(new Uri(BaseUrl), (JArray)jsonConfig["cookies"]); diff --git a/src/Jackett/Indexers/IPTorrents.cs b/src/Jackett/Indexers/IPTorrents.cs index 4c59fd8ac..2636a379e 100644 --- a/src/Jackett/Indexers/IPTorrents.cs +++ b/src/Jackett/Indexers/IPTorrents.cs @@ -111,19 +111,6 @@ namespace Jackett.Indexers return message; } - public Task VerifyConnection() - { - return Task.Run(async () => - { - var message = CreateHttpRequest(new Uri(BaseUrl)); - - var response = await client.SendAsync(message); - var result = await response.Content.ReadAsStringAsync(); - if (!result.Contains("/my.php")) - throw new Exception("Detected as not logged in"); - }); - } - public void LoadFromSavedConfiguration(Newtonsoft.Json.Linq.JToken jsonConfig) { cookies.FillFromJson(new Uri(BaseUrl), (JArray)jsonConfig["cookies"]); diff --git a/src/Jackett/Indexers/MoreThanTV.cs b/src/Jackett/Indexers/MoreThanTV.cs index 62ca9ac5e..e2ad766f0 100644 --- a/src/Jackett/Indexers/MoreThanTV.cs +++ b/src/Jackett/Indexers/MoreThanTV.cs @@ -107,13 +107,6 @@ namespace Jackett.Indexers } } - public async Task VerifyConnection() - { - var response = await client.GetStringAsync(BaseUrl); - if (!response.Contains("logout.php?")) - throw new Exception("Detected as not logged in"); - } - public void LoadFromSavedConfiguration(Newtonsoft.Json.Linq.JToken jsonConfig) { cookies.FillFromJson(new Uri(BaseUrl), (JArray)jsonConfig["cookies"]); diff --git a/src/Jackett/Indexers/ThePirateBay.cs b/src/Jackett/Indexers/ThePirateBay.cs index 33a2295ba..9af28bea1 100644 --- a/src/Jackett/Indexers/ThePirateBay.cs +++ b/src/Jackett/Indexers/ThePirateBay.cs @@ -95,12 +95,6 @@ namespace Jackett.Indexers IsConfigured = true; } - public async Task VerifyConnection() - { - await TestBrowse(BaseUrl); - } - - async Task TestBrowse(string url) { var result = await client.GetStringAsync(new Uri(url) + BrowserUrl); diff --git a/src/Jackett/WebApi.cs b/src/Jackett/WebApi.cs index 09f9d2016..60b584716 100644 --- a/src/Jackett/WebApi.cs +++ b/src/Jackett/WebApi.cs @@ -228,7 +228,7 @@ namespace Jackett var indexer = indexerManager.GetIndexer(indexerString); jsonReply["name"] = indexer.DisplayName; await indexer.ApplyConfiguration(postData["config"]); - await indexer.VerifyConnection(); + await indexerManager.TestIndexer(indexer); jsonReply["result"] = "success"; } catch (Exception ex) @@ -281,7 +281,7 @@ namespace Jackett string indexerString = (string)postData["indexer"]; var indexer = indexerManager.GetIndexer(indexerString); jsonReply["name"] = indexer.DisplayName; - await indexer.VerifyConnection(); + await indexerManager.TestIndexer(indexer); jsonReply["result"] = "success"; } catch (Exception ex)