using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace MediaBrowser.Common.ScheduledTasks { /// /// Interface IScheduledTaskWorker /// public interface IScheduledTask { /// /// Gets the name of the task /// /// The name. string Name { get; } /// /// Gets the description. /// /// The description. string Description { get; } /// /// Gets the category. /// /// The category. string Category { get; } /// /// Executes the task /// /// The cancellation token. /// The progress. /// Task. Task Execute(CancellationToken cancellationToken, IProgress progress); /// /// Gets the default triggers. /// /// IEnumerable{BaseTaskTrigger}. IEnumerable GetDefaultTriggers(); } public interface IConfigurableScheduledTask { /// /// Gets a value indicating whether this instance is hidden. /// /// true if this instance is hidden; otherwise, false. bool IsHidden { get; } /// /// Gets a value indicating whether this instance is enabled. /// /// true if this instance is enabled; otherwise, false. bool IsEnabled { get; } } public interface IHasKey { string Key { get; } } }