diff options
| author | dkanada <dkanada@users.noreply.github.com> | 2019-01-31 15:12:18 +0900 |
|---|---|---|
| committer | dkanada <dkanada@users.noreply.github.com> | 2019-02-03 19:40:55 +0900 |
| commit | 07072d9f7bf269926a4d7aad580e2e78c444a2cd (patch) | |
| tree | ffbf89de9e37812e660dfdb5a4098a71d9b82e44 /Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs | |
| parent | 7e3c45c917d707fcea048b2fe9621cf0774e3f98 (diff) | |
move all scheduled tasks and triggers into folders
Diffstat (limited to 'Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs')
| -rw-r--r-- | Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs | 87 |
1 files changed, 0 insertions, 87 deletions
diff --git a/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs b/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs deleted file mode 100644 index 98685cebe..000000000 --- a/Emby.Server.Implementations/ScheduledTasks/DailyTrigger.cs +++ /dev/null @@ -1,87 +0,0 @@ -using System; -using System.Globalization; -using System.Threading; -using MediaBrowser.Model.Tasks; -using Microsoft.Extensions.Logging; - -namespace Emby.Server.Implementations.ScheduledTasks -{ - /// <summary> - /// Represents a task trigger that fires everyday - /// </summary> - public class DailyTrigger : ITaskTrigger - { - /// <summary> - /// Get the time of day to trigger the task to run - /// </summary> - /// <value>The time of day.</value> - public TimeSpan TimeOfDay { get; set; } - - /// <summary> - /// Gets or sets the options of this task. - /// </summary> - public TaskOptions TaskOptions { get; set; } - - /// <summary> - /// Gets or sets the timer. - /// </summary> - /// <value>The timer.</value> - private Timer Timer { get; set; } - - /// <summary> - /// Stars waiting for the trigger action - /// </summary> - /// <param name="lastResult">The last result.</param> - /// <param name="isApplicationStartup">if set to <c>true</c> [is application startup].</param> - public void Start(TaskResult lastResult, ILogger logger, string taskName, bool isApplicationStartup) - { - DisposeTimer(); - - var now = DateTime.Now; - - var triggerDate = now.TimeOfDay > TimeOfDay ? now.Date.AddDays(1) : now.Date; - triggerDate = triggerDate.Add(TimeOfDay); - - var dueTime = triggerDate - now; - - logger.LogInformation("Daily trigger for {0} set to fire at {1}, which is {2} minutes from now.", taskName, triggerDate.ToString(), dueTime.TotalMinutes.ToString(CultureInfo.InvariantCulture)); - - Timer = new Timer(state => OnTriggered(), null, dueTime, TimeSpan.FromMilliseconds(-1)); - } - - /// <summary> - /// Stops waiting for the trigger action - /// </summary> - public void Stop() - { - DisposeTimer(); - } - - /// <summary> - /// Disposes the timer. - /// </summary> - private void DisposeTimer() - { - if (Timer != null) - { - Timer.Dispose(); - } - } - - /// <summary> - /// Occurs when [triggered]. - /// </summary> - public event EventHandler<EventArgs> Triggered; - - /// <summary> - /// Called when [triggered]. - /// </summary> - private void OnTriggered() - { - if (Triggered != null) - { - Triggered(this, EventArgs.Empty); - } - } - } -} |
