aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs')
-rw-r--r--MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs30
1 files changed, 16 insertions, 14 deletions
diff --git a/MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs b/MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs
index 759447b10..cac6d1fa3 100644
--- a/MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs
+++ b/MediaBrowser.Common/ScheduledTasks/IntervalTrigger.cs
@@ -6,7 +6,7 @@ namespace MediaBrowser.Common.ScheduledTasks
/// <summary>
/// Represents a task trigger that runs repeatedly on an interval
/// </summary>
- public class IntervalTrigger : BaseTaskTrigger
+ public class IntervalTrigger : ITaskTrigger
{
/// <summary>
/// Gets or sets the interval.
@@ -24,7 +24,7 @@ namespace MediaBrowser.Common.ScheduledTasks
/// Stars waiting for the trigger action
/// </summary>
/// <param name="isApplicationStartup">if set to <c>true</c> [is application startup].</param>
- protected internal override void Start(bool isApplicationStartup)
+ public void Start(bool isApplicationStartup)
{
DisposeTimer();
@@ -34,33 +34,35 @@ namespace MediaBrowser.Common.ScheduledTasks
/// <summary>
/// Stops waiting for the trigger action
/// </summary>
- protected internal override void Stop()
+ public void Stop()
{
DisposeTimer();
}
/// <summary>
- /// Disposes this instance.
+ /// Disposes the timer.
/// </summary>
- /// <param name="dispose"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
- protected override void Dispose(bool dispose)
+ private void DisposeTimer()
{
- if (dispose)
+ if (Timer != null)
{
- DisposeTimer();
+ Timer.Dispose();
}
-
- base.Dispose(dispose);
}
/// <summary>
- /// Disposes the timer.
+ /// Occurs when [triggered].
/// </summary>
- private void DisposeTimer()
+ public event EventHandler<EventArgs> Triggered;
+
+ /// <summary>
+ /// Called when [triggered].
+ /// </summary>
+ private void OnTriggered()
{
- if (Timer != null)
+ if (Triggered != null)
{
- Timer.Dispose();
+ Triggered(this, EventArgs.Empty);
}
}
}