using System;
using Microsoft.Extensions.Logging;
namespace MediaBrowser.Model.Tasks
{
///
/// Interface ITaskTrigger.
///
public interface ITaskTrigger
{
///
/// Fires when the trigger condition is satisfied and the task should run.
///
event EventHandler Triggered;
///
/// Gets or sets the options of this task.
///
TaskOptions TaskOptions { get; set; }
///
/// Stars waiting for the trigger action.
///
/// Result of the last run triggerd task.
/// The .
/// The name of the task.
/// Wheter or not this is is fired during startup.
void Start(TaskResult lastResult, ILogger logger, string taskName, bool isApplicationStartup);
///
/// Stops waiting for the trigger action.
///
void Stop();
}
}