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

Relativity.Transfer.PathEnumeratorBase

public abstract class PathEnumeratorBase : IPathEnumerator
namespace Relativity.Transfer { public abstract class PathEnumeratorBase : IPathEnumerator { protected ITransferLog Log { get; } protected IFileSystemService FileSystemService { get; } public virtual Task<EnumeratedPathsResult> EnumerateAsync(PathEnumeratorContext context); public virtual Task<EnumeratedPathsResult> EnumerateAsync(PathEnumeratorContext context, CancellationToken token); public virtual Task<SerializedPathsResult> SerializeAsync(string batchDirectory, PathEnumeratorContext context); public Task<SerializedPathsResult> SerializeAsync(string batchDirectory, PathEnumeratorContext context, CancellationToken token); protected virtual int GetMaxDegreeOfFileParallelism(PathEnumeratorContext context); protected virtual int GetMaxDegreeOfDirectoryParallelism(PathEnumeratorContext context); protected virtual void OnInitialize(PathEnumeratorContext context, CancellationToken token); protected abstract Task<bool> OnCheckFileExistsAsync(string path, CancellationToken token); protected abstract Task<bool> OnCheckFolderExistsAsync(string path, CancellationToken token); protected abstract Task<bool> OnCheckIsEmptyAsync(string path, CancellationToken token); protected abstract Task<IEnumerable<FileItem>> OnEnumerateFilesAsync(string path, PathEnumeratorContext context, CancellationToken token); protected abstract Task<IEnumerable<FolderItem>> OnEnumerateFoldersAsync(string path, PathEnumeratorContext context, CancellationToken token); protected abstract Task<FileItem> OnGetFileItemAsync(string path, CancellationToken token); protected abstract Task<FolderItem> OnGetFolderItemAsync(string path, CancellationToken token); protected virtual string GetLocalPath(string path); } }