<PackageReference Include="Relativity.Server.Import.SDK" Version="2.9.2" />

LoadFileWriterRetryable

using kCura.WinEDDS; using kCura.WinEDDS.Exporters; using kCura.WinEDDS.LoadFileEntry; using Relativity.DataExchange.Export.VolumeManagerV2.Batches; using Relativity.DataExchange.Export.VolumeManagerV2.Metadata.Paths; using Relativity.DataExchange.Export.VolumeManagerV2.Statistics; using Relativity.Logging; using System; using System.Collections.Generic; using System.IO; using System.Threading; namespace Relativity.DataExchange.Export.VolumeManagerV2.Metadata.Writers { public class LoadFileWriterRetryable : WriterRetryable, ILoadFileWriter, IStateful, IDisposable { private readonly LoadFileWriter _loadFileWriter; public LoadFileWriterRetryable(WritersRetryPolicy writersRetryPolicy, StreamFactory streamFactory, ILog logger, IStatus status, LoadFileDestinationPath destinationPath, LoadFileWriter loadFileWriter, IMetadataProcessingStatistics metadataProcessingStatistics) : base(writersRetryPolicy, streamFactory, logger, status, destinationPath, metadataProcessingStatistics) { _loadFileWriter = loadFileWriter; } public void Write(IDictionary<int, ILoadFileEntry> linesToWrite, ObjectExportInfo[] artifacts, CancellationToken cancellationToken) { Execute(delegate(IEnumerator<ObjectExportInfo> enumerator, StreamWriter streamWriter) { _loadFileWriter.Write(streamWriter, linesToWrite, enumerator, cancellationToken); }, artifacts, cancellationToken); } } }