using System;
using System.Linq;
using NzbDrone.Core.Model.Notification;
namespace NzbDrone.Core.Jobs
{
public interface IJob
{
///
/// Name of the timer.
/// This is the name that will be visible in all UI elements
/// \\\
string Name { get; }
///
/// Default Interval that this job should run at. In seconds.
///
/// Setting this value to 0 means the job will not be
/// executed by the schedule and is only triggered manually.
TimeSpan DefaultInterval { get; }
///
/// Starts the job
///
/// Notification object that is passed in by JobProvider.
/// this object should be used to update the progress on the UI
/// The that should be used to limit the target of this job
/// /// The that should be used to limit the target of this job
void Start(ProgressNotification notification, int targetId, int secondaryTargetId);
}
}