Radarr/NzbDrone.Core/Jobs/IJob.cs

33 lines
1.1 KiB
C#
Raw Normal View History

2013-03-05 05:37:33 +00:00
using System;
using System.Linq;
2011-12-02 01:33:17 +00:00
using NzbDrone.Core.Model.Notification;
2013-03-05 05:37:33 +00:00
namespace NzbDrone.Core.Jobs
{
public interface IJob
{
/// <summary>
/// Name of the timer.
/// This is the name that will be visible in all UI elements
/// </summary>\\\
string Name { get; }
/// <summary>
/// Default Interval that this job should run at. In seconds.
/// </summary>
/// <remarks>Setting this value to 0 means the job will not be
/// executed by the schedule and is only triggered manually.</remarks>
TimeSpan DefaultInterval { get; }
/// <summary>
/// Starts the job
/// </summary>
/// <param name="notification">Notification object that is passed in by JobProvider.
/// this object should be used to update the progress on the UI</param>
/// <param name="targetId">The that should be used to limit the target of this job</param>
/// /// <param name="secondaryTargetId">The that should be used to limit the target of this job</param>
2012-09-10 19:04:17 +00:00
void Start(ProgressNotification notification, dynamic options);
}
}