v1.2
This commit is contained in:
76
RoboSharp/Interfaces/IRoboCommandFactory.cs
Normal file
76
RoboSharp/Interfaces/IRoboCommandFactory.cs
Normal file
@@ -0,0 +1,76 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace RoboSharp.Interfaces
|
||||
{
|
||||
/// <summary>
|
||||
/// Interface for a class factory object to produce <see cref="IRoboCommand"/> objects <br/>
|
||||
/// Usable by consumers to specify a factory object their library can rely on to create classes derived from the <see cref="RoboCommand"/> object. <br/>
|
||||
/// </summary>
|
||||
public interface IRoboCommandFactory
|
||||
{
|
||||
/// <summary>
|
||||
/// Create a new <see cref="IRoboCommand"/> object using the parameterless constructor
|
||||
/// </summary>
|
||||
/// <returns>
|
||||
/// new <see cref="IRoboCommand"/> object
|
||||
/// </returns>
|
||||
/// <inheritdoc cref="RoboCommand.RoboCommand()"/>
|
||||
IRoboCommand GetRoboCommand();
|
||||
|
||||
/// <summary>
|
||||
/// Create a new <see cref="IRoboCommand"/> with the specified source and destination
|
||||
/// </summary>
|
||||
/// <param name="source"><inheritdoc cref="CopyOptions.Source" path="*"/></param>
|
||||
/// <param name="destination"><inheritdoc cref="CopyOptions.Destination" path="*"/></param>
|
||||
/// <inheritdoc cref="RoboCommand.RoboCommand(string, string, bool)"/>
|
||||
IRoboCommand GetRoboCommand(string source, string destination);
|
||||
|
||||
/// <inheritdoc cref="RoboCommandFactory.GetRoboCommand(string, string, CopyOptions.CopyActionFlags, SelectionOptions.SelectionFlags)"/>
|
||||
IRoboCommand GetRoboCommand(string source, string destination, CopyOptions.CopyActionFlags copyActionFlags);
|
||||
|
||||
/// <inheritdoc cref="RoboCommandFactory.GetRoboCommand(string, string, CopyOptions.CopyActionFlags, SelectionOptions.SelectionFlags)"/>
|
||||
IRoboCommand GetRoboCommand(string source, string destination, CopyOptions.CopyActionFlags copyActionFlags, SelectionOptions.SelectionFlags selectionFlags);
|
||||
|
||||
/*
|
||||
* The constructors within the region below have been intentionally left out of the interface.
|
||||
* This is because these constructors are for more advanced usage of the object, and the base interface should only enforce the
|
||||
* what will most likely be the two most commonly used constructors.
|
||||
*
|
||||
* Should consumers require the interface to be expanded, they can produce their own interface that is derived from this one.
|
||||
*/
|
||||
|
||||
#region
|
||||
|
||||
///// <summary>
|
||||
///// Create a new <see cref="IRoboCommand"/> with the specified name
|
||||
///// </summary>
|
||||
///// <inheritdoc cref="RoboCommand.RoboCommand(string, bool)"/>
|
||||
//IRoboCommand GetRoboCommand(string name, bool stopIfDisposing = true);
|
||||
|
||||
///// <summary>
|
||||
///// Create a new <see cref="IRoboCommand"/> with the specified source and destination
|
||||
///// </summary>
|
||||
///// <inheritdoc cref="RoboCommand.RoboCommand(string, string, bool)"/>
|
||||
//IRoboCommand GetRoboCommand(string source, string destination, bool stopIfDisposing = true);
|
||||
|
||||
///// <summary>
|
||||
///// Create a new <see cref="IRoboCommand"/> with the specified source, destination, and name
|
||||
///// </summary>
|
||||
///// <inheritdoc cref="RoboCommand.RoboCommand(string, string, string, bool)"/>
|
||||
//IRoboCommand GetRoboCommand(string source, string destination, string name, bool stopIfDisposing = true);
|
||||
|
||||
|
||||
///// <inheritdoc cref="RoboCommand.RoboCommand(string, string, string, bool, RoboSharpConfiguration, CopyOptions, SelectionOptions, RetryOptions, LoggingOptions, JobOptions)"/>
|
||||
//IRoboCommand GetRoboCommand(string name, string source = null, string destination = null, bool stopIfDisposing = true, RoboSharpConfiguration configuration = null, CopyOptions copyOptions = null, SelectionOptions selectionOptions = null, RetryOptions retryOptions = null, LoggingOptions loggingOptions = null, JobOptions jobOptions = null);
|
||||
|
||||
|
||||
///// <inheritdoc cref="RoboCommand.RoboCommand(RoboCommand, string, string, bool, bool, bool, bool, bool)"/>
|
||||
//IRoboCommand GetRoboCommand(RoboCommand command, string NewSource = null, string NewDestination = null, bool LinkConfiguration = true, bool LinkRetryOptions = true, bool LinkSelectionOptions = false, bool LinkLoggingOptions = false, bool LinkJobOptions = false);
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user