123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- #pragma warning disable CS1591
- using System;
- using System.Collections.Generic;
- using System.Threading.Tasks;
- using Jellyfin.Data.Events;
- namespace MediaBrowser.Model.Tasks
- {
- public interface ITaskManager : IDisposable
- {
- /// <summary>
- /// Gets the list of Scheduled Tasks.
- /// </summary>
- /// <value>The scheduled tasks.</value>
- IScheduledTaskWorker[] ScheduledTasks { get; }
- /// <summary>
- /// Cancels if running and queue.
- /// </summary>
- /// <typeparam name="T"></typeparam>
- /// <param name="options">Task options.</param>
- void CancelIfRunningAndQueue<T>(TaskOptions options)
- where T : IScheduledTask;
- /// <summary>
- /// Cancels if running and queue.
- /// </summary>
- /// <typeparam name="T"></typeparam>
- void CancelIfRunningAndQueue<T>()
- where T : IScheduledTask;
- /// <summary>
- /// Cancels if running.
- /// </summary>
- /// <typeparam name="T"></typeparam>
- void CancelIfRunning<T>()
- where T : IScheduledTask;
- /// <summary>
- /// Queues the scheduled task.
- /// </summary>
- /// <typeparam name="T"></typeparam>
- /// <param name="options">Task options.</param>
- void QueueScheduledTask<T>(TaskOptions options)
- where T : IScheduledTask;
- /// <summary>
- /// Queues the scheduled task.
- /// </summary>
- /// <typeparam name="T"></typeparam>
- void QueueScheduledTask<T>()
- where T : IScheduledTask;
- void QueueIfNotRunning<T>()
- where T : IScheduledTask;
- /// <summary>
- /// Queues the scheduled task.
- /// </summary>
- void QueueScheduledTask(IScheduledTask task, TaskOptions options);
- /// <summary>
- /// Adds the tasks.
- /// </summary>
- /// <param name="tasks">The tasks.</param>
- void AddTasks(IEnumerable<IScheduledTask> tasks);
- void Cancel(IScheduledTaskWorker task);
- Task Execute(IScheduledTaskWorker task, TaskOptions options);
- void Execute<T>()
- where T : IScheduledTask;
- event EventHandler<GenericEventArgs<IScheduledTaskWorker>> TaskExecuting;
- event EventHandler<TaskCompletionEventArgs> TaskCompleted;
- }
- }
|