Files
FSI.BT.IR.Tools/FSI.Lib/Tools/RoboSharp/Interfaces/IRoboCommand.cs
maier_S 907ad039c4 Squashed 'FSI.Lib/' changes from 6aa4846..4a27cd3
4a27cd3 RoboSharp eingefügt
1b2fc1f Erweiterungsmethode für Startparameter einefügt

git-subtree-dir: FSI.Lib
git-subtree-split: 4a27cd377a1959dc669625473b018e42c31ef147
2022-03-23 14:17:56 +01:00

114 lines
3.8 KiB
C#

using System.Threading.Tasks;
namespace FSI.Lib.Tools.RoboSharp.Interfaces
{
/// <summary>
///
/// </summary>
/// <remarks>
/// <see href="https://github.com/tjscience/RoboSharp/wiki/IRoboCommand"/>
/// </remarks>
public interface IRoboCommand
{
#region Properties
/// <inheritdoc cref="RoboCommand.Name"/>
string Name { get; }
/// <inheritdoc cref="RoboCommand.IsPaused"/>
bool IsPaused { get; }
/// <inheritdoc cref="RoboCommand.IsRunning"/>
bool IsRunning { get; }
/// <inheritdoc cref="RoboCommand.IsScheduled"/>
bool IsScheduled{ get; }
/// <inheritdoc cref="RoboCommand.IsCancelled"/>
bool IsCancelled { get; }
/// <inheritdoc cref="RoboCommand.StopIfDisposing"/>
bool StopIfDisposing { get; }
/// <inheritdoc cref="RoboCommand.ProgressEstimator"/>
IProgressEstimator IProgressEstimator { get; }
/// <inheritdoc cref="RoboCommand.IsPaused"/>
string CommandOptions { get; }
/// <inheritdoc cref="RoboCommand.CopyOptions"/>
CopyOptions CopyOptions { get; set; }
/// <inheritdoc cref="RoboCommand.SelectionOptions"/>
SelectionOptions SelectionOptions { get; set; }
/// <inheritdoc cref="RoboCommand.RetryOptions"/>
RetryOptions RetryOptions { get; set; }
/// <inheritdoc cref="RoboCommand.LoggingOptions"/>
LoggingOptions LoggingOptions { get; set; }
/// <inheritdoc cref="RoboCommand.JobOptions"/>
JobOptions JobOptions{ get; }
/// <inheritdoc cref="RoboCommand.Configuration"/>
RoboSharpConfiguration Configuration { get; }
#endregion Properties
#region Events
/// <inheritdoc cref="RoboCommand.OnFileProcessed"/>
event RoboCommand.FileProcessedHandler OnFileProcessed;
/// <inheritdoc cref="RoboCommand.OnCommandError"/>
event RoboCommand.CommandErrorHandler OnCommandError;
/// <inheritdoc cref="RoboCommand.OnError"/>
event RoboCommand.ErrorHandler OnError;
/// <inheritdoc cref="RoboCommand.OnCommandCompleted"/>
event RoboCommand.CommandCompletedHandler OnCommandCompleted;
/// <inheritdoc cref="RoboCommand.OnCopyProgressChanged"/>
event RoboCommand.CopyProgressHandler OnCopyProgressChanged;
/// <inheritdoc cref="RoboCommand.OnProgressEstimatorCreated"/>
event RoboCommand.ProgressUpdaterCreatedHandler OnProgressEstimatorCreated;
#endregion Events
#region Methods
/// <inheritdoc cref="RoboCommand.Pause"/>
void Pause();
/// <inheritdoc cref="RoboCommand.Resume"/>
void Resume();
/// <inheritdoc cref="RoboCommand.Start(string, string, string)"/>
Task Start(string domain = "", string username = "", string password = "");
/// <inheritdoc cref="RoboCommand.Start_ListOnly(string, string, string)"/>
Task Start_ListOnly(string domain = "", string username = "", string password = "");
/// <inheritdoc cref="RoboCommand.Stop()"/>
void Stop();
/// <inheritdoc cref="RoboCommand.Dispose()"/>
void Dispose();
#if NET45_OR_GREATER || NETSTANDARD2_0_OR_GREATER || NETCOREAPP3_1_OR_GREATER
/// <inheritdoc cref="RoboCommand.StartAsync_ListOnly(string, string, string)"/>
Task<Results.RoboCopyResults> StartAsync_ListOnly(string domain = "", string username = "", string password = "");
/// <inheritdoc cref="RoboCommand.StartAsync(string, string, string)"/>
Task<Results.RoboCopyResults> StartAsync(string domain = "", string username = "", string password = "");
#endif
#endregion Methods
}
}