<PackageReference Include="Relativity.Server.Transfer.SDK" Version="7.7.0" />

Relativity.Transfer.TransferPathCommandBase

namespace Relativity.Transfer { public abstract class TransferPathCommandBase : ITransferPathCommand { public IReadOnlyList<ITransferIssue> Issues { get; } protected IFileSystemService FileSystemService { get; } protected ITransferJobService JobService { get; } protected ClientConfiguration Configuration { get; } protected bool FileNotFoundErrorsDisabled { get; } protected bool FilePermissionErrorsRetry { get; } protected int FileSystemChunkSize { get; } protected ITransferLog Log { get; } protected int MaxJobRetryAttempts { get; } protected IProgress<LargeFileProgressEventArgs> LargeFileProgressProvider { get; } protected double LargeFileProgressRateSeconds { get; } protected bool OverwriteFiles { get; } protected bool PreserveDates { get; } protected ITransferRequest Request { get; } protected TransferPathCommandBase(ITransferLog log, ITransferRequest request, ITransferJobService jobService, IFileSystemService fileSystemService, ClientConfiguration configuration); public virtual TransferPathResult Execute(TransferPath path, CancellationToken token); public virtual void PreExecute(CancellationToken token); public virtual void PostExecute(CancellationToken token); protected abstract TransferPathResult OnExecute(TransferPath path, CancellationToken token); protected virtual void OnPostExecute(CancellationToken token); protected virtual void OnPreExecute(CancellationToken token); protected void PublishTransferPathProgress(TransferPathResult result); protected void PublishTransferJobIssue(ITransferIssue issue); protected void PublishTransferFileIssue(ITransferIssue issue); protected void PublishTransferStatistics(bool force); protected void PublishLargeFileProgress(TransferPath path, long totalTransferredBytes, long totalBytes, double progress); protected void PublishLargeFileProgress(TransferPath path, long totalTransferredBytes, long totalBytes, int chunkNumber, int totalChunks); protected void PublishLargeFileProgress(LargeFileProgressEventArgs args); protected void PublishTransferRequest(TransferRequestStatus status); protected void RegisterIssue(ITransferIssue issue); protected void HandleCancel(TransferPathResult result); protected IssueAttributes GetWarningErrorAttribute(); protected virtual void OnLargeFileProgress(LargeFileProgressEventArgs e); protected TransferPathResult HandleUnauthorizedAccessException(TransferPath path, UnauthorizedAccessException exception, TransferPathResult result, int maxRetryAttempts); } }