2015-04-13 06:25:21 +00:00
|
|
|
|
using Newtonsoft.Json.Linq;
|
|
|
|
|
using System;
|
|
|
|
|
using System.Collections.Generic;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Threading.Tasks;
|
2015-04-13 14:25:41 +00:00
|
|
|
|
using System.Web.UI.WebControls;
|
2015-04-13 06:25:21 +00:00
|
|
|
|
|
|
|
|
|
namespace Jackett
|
|
|
|
|
{
|
|
|
|
|
public interface IndexerInterface
|
|
|
|
|
{
|
2015-04-13 14:25:41 +00:00
|
|
|
|
string DisplayName { get; }
|
|
|
|
|
string DisplayDescription { get; }
|
2015-04-14 14:51:56 +00:00
|
|
|
|
Uri SiteLink { get; }
|
2015-04-13 14:25:41 +00:00
|
|
|
|
|
2015-04-13 06:25:21 +00:00
|
|
|
|
// Retrieved for starting setup for the indexer via web API
|
|
|
|
|
Task<ConfigurationData> GetConfigurationForSetup();
|
|
|
|
|
|
|
|
|
|
// Called when web API wants to apply setup configuration via web API, usually this is where login and storing cookie happens
|
|
|
|
|
Task ApplyConfiguration(JToken jsonConfig);
|
|
|
|
|
|
|
|
|
|
// 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<JToken> OnSaveConfigurationRequested;
|
|
|
|
|
|
|
|
|
|
// Whether this indexer has been configured, verified and saved in the past and has the settings required for functioning
|
|
|
|
|
bool IsConfigured { get; }
|
|
|
|
|
|
|
|
|
|
// Called on startup when initializing indexers from saved configuration
|
|
|
|
|
void LoadFromSavedConfiguration(JToken jsonConfig);
|
|
|
|
|
}
|
|
|
|
|
}
|