using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Tango.PPC.Common.FileSystem
{
/// <summary>
/// Represents an active file system file/folder download/upload operation
/// </summary>
public class FileSystemOperation
{
/// <summary>
/// Gets or sets the operation mode.
/// </summary>
public FileSystemOperationMode Mode { get; set; }
/// <summary>
/// Gets or sets the operation identifier.
/// </summary>
public String Id { get; set; }
/// <summary>
/// Gets or sets the path for the operation.
/// </summary>
public String Path { get; set; }
/// <summary>
/// Should be set to true when the <see cref="Path"/> is a temporary zip file when performing download of a folder.
/// </summary>
public bool IsPathTempZip { get; set; }
/// <summary>
/// Gets or sets the actual path to extract the zip file when uploading folder.
/// </summary>
public String UploadPostPath { get; set; }
/// <summary>
/// Initializes a new instance of the <see cref="FileSystemOperation"/> class.
/// </summary>
/// <param name="mode">The mode.</param>
/// <param name="path">The path.</param>
public FileSystemOperation(FileSystemOperationMode mode, String path)
{
Mode = mode;
Id = Guid.NewGuid().ToString();
Path = path;
}
}
}