/// <summary>
/// The Constructor
/// </summary>
/// <param name="options">Options of a program</param>
public Controller(ProgramOptions options)
{
if (options == null)
{
throw new ArgumentNullException("options");
}
_schedulers = new List <Scheduler>();
_options = options;
foreach (var pair in _options.BackupTasks)
{
if (pair.Value.EnableScheduling)
{
var scheduler = new Scheduler(pair.Value);
scheduler.DoAction += (p) => { DoBackup(p, true); };
scheduler.EightMinutesRemainedEventHandler += () => { notifyUser(Translation.Current[477]); };
scheduler.Resume();
_schedulers.Add(scheduler);
}
}
}