BatchExporter
using kCura.WinEDDS.Exporters;
using Relativity.DataExchange.Export.VolumeManagerV2.Download;
using Relativity.DataExchange.Export.VolumeManagerV2.ImagesRollup;
using Relativity.DataExchange.Export.VolumeManagerV2.Metadata.Images;
using Relativity.DataExchange.Export.VolumeManagerV2.Metadata.Natives;
using Relativity.DataExchange.Export.VolumeManagerV2.Statistics;
using System.Runtime.CompilerServices;
using System.Threading;
using System.Threading.Tasks;
namespace Relativity.DataExchange.Export.VolumeManagerV2.Batches
{
public class BatchExporter : IBatchExporter
{
private readonly IDownloader _downloader;
private readonly IImagesRollupManager _imagesRollupManager;
private readonly IMessenger _messenger;
private readonly IImageLoadFile _imageLoadFile;
private readonly ILoadFile _loadFile;
private readonly IFileDownloadSubscriber _fileDownloadSubscriber;
public BatchExporter(IDownloader downloader, IImagesRollupManager imagesRollupManager, IMessenger messenger, IImageLoadFile imageLoadFile, ILoadFile loadFile, IFileDownloadSubscriber fileDownloadSubscriber)
{
_downloader = downloader;
_imagesRollupManager = imagesRollupManager;
_messenger = messenger;
_imageLoadFile = imageLoadFile;
_loadFile = loadFile;
_fileDownloadSubscriber = fileDownloadSubscriber;
}
[AsyncStateMachine(typeof(<ExportAsync>d__7))]
public Task ExportAsync(ObjectExportInfo[] artifacts, CancellationToken cancellationToken)
{
<ExportAsync>d__7 stateMachine = default(<ExportAsync>d__7);
stateMachine.<>t__builder = AsyncTaskMethodBuilder.Create();
stateMachine.<>4__this = this;
stateMachine.artifacts = artifacts;
stateMachine.cancellationToken = cancellationToken;
stateMachine.<>1__state = -1;
stateMachine.<>t__builder.Start(ref stateMachine);
return stateMachine.<>t__builder.Task;
}
}
}