ITransferClient
using System;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
namespace Relativity.Transfer
{
public interface ITransferClient : IDisposable
{
WellKnownTransferClient Client { get; }
RelativityConnectionInfo ConnectionInfo { get; }
ClientConfiguration Configuration { get; }
string DisplayName { get; }
Guid Id { get; }
string Name { get; }
Task<IConnectionCheckResult> ConnectionCheckAsync(DiagnosticsContext context);
Task<IConnectionCheckResult> ConnectionCheckAsync(DiagnosticsContext context, CancellationToken token);
Task<ITransferJob> CreateJobAsync(ITransferRequest request);
Task<ITransferJob> CreateJobAsync(ITransferRequest request, CancellationToken token);
IPathEnumerator CreatePathEnumerator(bool local);
IBatchSerializer CreateBatchSerializer(string batchDirectory, TransferDirection direction, PathEnumeratorContext context);
Task<Workspace> GetWorkspaceAsync();
Task<Workspace> GetWorkspaceAsync(CancellationToken token);
Task<Workspace> GetWorkspaceAsync(int workspaceArtifactId, CancellationToken token);
Task<IPackageTransferResult> PackageTransferAsync(ITransferRequest request, PackageContext context);
Task<IPackageTransferResult> PackageTransferAsync(ITransferRequest request, PackageContext context, CancellationToken token);
Task<IPackageTransferResult> PackageTransferAsync(ITransferRequest request, IEnumerable<SerializedBatch> batches, PackageContext context, CancellationToken token);
Task<ITransferResult> TransferAsync(ITransferRequest request);
Task<ITransferResult> TransferAsync(ITransferRequest request, CancellationToken token);
Task<ISupportCheckResult> SupportCheckAsync();
Task<ISupportCheckResult> SupportCheckAsync(CancellationToken token);
}
}