using RoboSharp.Interfaces; using RoboSharp.Results; using System; using System.Collections; using System.Collections.Generic; using System.Collections.ObjectModel; using System.ComponentModel; using System.Threading.Tasks; namespace RoboSharp.Interfaces { /// /// Interface for RoboQueue /// public interface IRoboQueue : IDisposable, INotifyPropertyChanged, IEnumerable { #region < Properties > /// bool AnyCancelled { get; } /// bool AnyPaused { get; } /// bool AnyRunning { get; } /// ReadOnlyCollection Commands { get; } /// bool CopyOperationCompleted { get; } /// bool IsCopyOperationRunning { get; } /// bool IsListOnlyRunning { get; } /// bool IsPaused { get; } /// bool IsRunning { get; } /// int JobsComplete { get; } /// int JobsCompletedSuccessfully { get; } /// int JobsCurrentlyRunning { get; } /// int JobsStarted { get; } /// int ListCount { get; } /// bool ListOnlyCompleted { get; } /// IRoboQueueResults ListResults { get; } /// int MaxConcurrentJobs { get; set; } /// string Name { get; } /// IProgressEstimator ProgressEstimator { get; } /// IRoboQueueResults RunResults { get; } /// bool WasCancelled { get; } #endregion #region < Events > /// event RoboCommand.CommandCompletedHandler OnCommandCompleted; /// event RoboCommand.CommandErrorHandler OnCommandError; /// event RoboQueue.CommandStartedHandler OnCommandStarted; /// event RoboCommand.CopyProgressHandler OnCopyProgressChanged; /// event RoboCommand.ErrorHandler OnError; /// event RoboCommand.FileProcessedHandler OnFileProcessed; /// event RoboQueue.ProgressUpdaterCreatedHandler OnProgressEstimatorCreated; /// event RoboQueue.RunCompletedHandler RunCompleted; /// event RoboCopyResultsList.ResultsListUpdated RunResultsUpdated; /// event UnhandledExceptionEventHandler TaskFaulted; #endregion #region < Methods > /// void PauseAll(); /// void ResumeAll(); /// Task StartAll(string domain = "", string username = "", string password = ""); /// Task StartAll_ListOnly(string domain = "", string username = "", string password = ""); /// void StopAll(); #endregion } }