ImageLoadFileMetadataBuilderFactory
using Castle.Windsor;
using kCura.WinEDDS;
using Relativity.DataExchange.Export.VolumeManagerV2.Metadata.Writers;
using Relativity.Logging;
namespace Relativity.DataExchange.Export.VolumeManagerV2.Metadata.Images
{
public class ImageLoadFileMetadataBuilderFactory
{
private readonly ILog _logger;
public ImageLoadFileMetadataBuilderFactory(ILog logger)
{
_logger = logger;
}
public IImageLoadFileMetadataBuilder Create(ExportFile exportSettings, IWindsorContainer container)
{
ImageLoadFileMetadataForArtifactBuilderFactory imageLoadFileMetadataForArtifactBuilderFactory = container.Resolve<ImageLoadFileMetadataForArtifactBuilderFactory>();
IImageLoadFileMetadataForArtifactBuilder forArtifactBuilder = imageLoadFileMetadataForArtifactBuilderFactory.Create(exportSettings);
IImageLoadFileMetadataForArtifactBuilder unsuccessfulRollupForArtifactBuilder = imageLoadFileMetadataForArtifactBuilderFactory.CreateForUnsuccessfulRollup(exportSettings);
IRetryableStreamWriter writer = container.Resolve<ImageLoadFileRetryableStreamWriter>();
return new ImageLoadFileMetadataBuilder(forArtifactBuilder, unsuccessfulRollupForArtifactBuilder, writer, _logger);
}
}
}