aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2015-03-05 13:54:04 -0500
committerLuke Pulverenti <luke.pulverenti@gmail.com>2015-03-05 13:54:04 -0500
commit0a7dc313fded15da4445500f11a5124bedc47369 (patch)
tree821d7a6efe3fe58226906b41d14fd45a458619c0 /MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs
parent6e1178a07bde7667f5d54412f6f7509688f83d53 (diff)
add ability to configure scheduled task time limit
Diffstat (limited to 'MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs')
-rw-r--r--MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs22
1 files changed, 18 insertions, 4 deletions
diff --git a/MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs b/MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs
index cec6249b3..4ad33341a 100644
--- a/MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs
+++ b/MediaBrowser.Common/ScheduledTasks/ScheduledTaskHelpers.cs
@@ -99,6 +99,11 @@ namespace MediaBrowser.Common.ScheduledTasks
info.SystemEvent = systemEventTrigger.SystemEvent;
}
+ if (trigger.TaskOptions != null)
+ {
+ info.MaxRuntimeMs = trigger.TaskOptions.MaxRuntimeMs;
+ }
+
return info;
}
@@ -111,6 +116,11 @@ namespace MediaBrowser.Common.ScheduledTasks
/// <exception cref="System.ArgumentException">Invalid trigger type: + info.Type</exception>
public static ITaskTrigger GetTrigger(TaskTriggerInfo info)
{
+ var options = new TaskExecutionOptions
+ {
+ MaxRuntimeMs = info.MaxRuntimeMs
+ };
+
if (info.Type.Equals(typeof(DailyTrigger).Name, StringComparison.OrdinalIgnoreCase))
{
if (!info.TimeOfDayTicks.HasValue)
@@ -120,7 +130,8 @@ namespace MediaBrowser.Common.ScheduledTasks
return new DailyTrigger
{
- TimeOfDay = TimeSpan.FromTicks(info.TimeOfDayTicks.Value)
+ TimeOfDay = TimeSpan.FromTicks(info.TimeOfDayTicks.Value),
+ TaskOptions = options
};
}
@@ -139,7 +150,8 @@ namespace MediaBrowser.Common.ScheduledTasks
return new WeeklyTrigger
{
TimeOfDay = TimeSpan.FromTicks(info.TimeOfDayTicks.Value),
- DayOfWeek = info.DayOfWeek.Value
+ DayOfWeek = info.DayOfWeek.Value,
+ TaskOptions = options
};
}
@@ -152,7 +164,8 @@ namespace MediaBrowser.Common.ScheduledTasks
return new IntervalTrigger
{
- Interval = TimeSpan.FromTicks(info.IntervalTicks.Value)
+ Interval = TimeSpan.FromTicks(info.IntervalTicks.Value),
+ TaskOptions = options
};
}
@@ -165,7 +178,8 @@ namespace MediaBrowser.Common.ScheduledTasks
return new SystemEventTrigger
{
- SystemEvent = info.SystemEvent.Value
+ SystemEvent = info.SystemEvent.Value,
+ TaskOptions = options
};
}