ScheduledTaskHelpers.cs 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. 
  2. namespace MediaBrowser.Model.Tasks
  3. {
  4. /// <summary>
  5. /// Class ScheduledTaskHelpers
  6. /// </summary>
  7. public static class ScheduledTaskHelpers
  8. {
  9. /// <summary>
  10. /// Gets the task info.
  11. /// </summary>
  12. /// <param name="task">The task.</param>
  13. /// <returns>TaskInfo.</returns>
  14. public static TaskInfo GetTaskInfo(IScheduledTaskWorker task)
  15. {
  16. var isHidden = false;
  17. var configurableTask = task.ScheduledTask as IConfigurableScheduledTask;
  18. if (configurableTask != null)
  19. {
  20. isHidden = configurableTask.IsHidden;
  21. }
  22. string key = task.ScheduledTask.Key;
  23. return new TaskInfo
  24. {
  25. Name = task.Name,
  26. CurrentProgressPercentage = task.CurrentProgress,
  27. State = task.State,
  28. Id = task.Id,
  29. LastExecutionResult = task.LastExecutionResult,
  30. Triggers = task.Triggers,
  31. Description = task.Description,
  32. Category = task.Category,
  33. IsHidden = isHidden,
  34. Key = key
  35. };
  36. }
  37. }
  38. }