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

BatchInitializationFactory

using Castle.Windsor; using kCura.WinEDDS; using Relativity.DataExchange.Export.VolumeManagerV2.Container; using Relativity.DataExchange.Export.VolumeManagerV2.Directories; using Relativity.DataExchange.Export.VolumeManagerV2.Download; using Relativity.DataExchange.Export.VolumeManagerV2.Repository; using Relativity.Logging; using System.Collections.Generic; namespace Relativity.DataExchange.Export.VolumeManagerV2.Batches { public class BatchInitializationFactory { private readonly ILog _logger; public BatchInitializationFactory(ILog logger) { _logger = logger; } public IBatchInitialization Create(ExportFile exportSettings, IExportConfig exportConfig, IWindsorContainer container) { List<IRepositoryBuilder> repositoryBuilders = new List<IRepositoryBuilder> { (IRepositoryBuilder)container.Resolve<LongTextRepositoryBuilderFactory>().Create(exportSettings, container), container.Resolve<NativeRepositoryBuilderFactory>().Create(exportSettings, container), (IRepositoryBuilder)container.Resolve<ImageRepositoryBuilderFactory>().Create(exportSettings, container), (IRepositoryBuilder)new FileRepositoryBuilder(container.Resolve<FileRequestRepository>(ExportInstaller.GetServiceNameByExportType(typeof(FileRequestRepository), "Pdf")), container.Resolve<ILabelManagerForArtifact>(), container.Resolve<IExportRequestBuilder>(ExportInstaller.GetServiceNameByExportType(typeof(IExportRequestBuilder), "Pdf")), _logger) }; IDirectoryManager directoryManager = container.Resolve<IDirectoryManager>(); return new BatchInitialization(repositoryBuilders, directoryManager, _logger); } } }