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

ProductionExportFileNameProvider

using kCura.WinEDDS.Exporters; using System; namespace kCura.WinEDDS { public class ProductionExportFileNameProvider : IFileNameProvider { private readonly ExportFile _exportSettings; private readonly bool _nameTextAndNativesAfterBegBates; public ProductionExportFileNameProvider(ExportFile exportSettings, bool nameTextAndNativesAfterBegBates) { _exportSettings = exportSettings; _nameTextAndNativesAfterBegBates = nameTextAndNativesAfterBegBates; } public string GetName(ObjectExportInfo exportedObjectInfo) { if (exportedObjectInfo == null) throw new ArgumentNullException("exportedObjectInfo"); return exportedObjectInfo.get_ProductionBeginBatesFileName(_exportSettings.AppendOriginalFileName, _nameTextAndNativesAfterBegBates); } string IFileNameProvider.GetName(ObjectExportInfo exportedObjectInfo) { return this.GetName(exportedObjectInfo); } public string GetTextName(ObjectExportInfo exportedObjectInfo) { if (exportedObjectInfo == null) throw new ArgumentNullException("exportedObjectInfo"); return exportedObjectInfo.FullTextFileName(AreFilesNamedAfterIdentifier(), false, _exportSettings.AppendOriginalFileName); } string IFileNameProvider.GetTextName(ObjectExportInfo exportedObjectInfo) { return this.GetTextName(exportedObjectInfo); } public string GetPdfName(ObjectExportInfo exportedObjectInfo) { throw new InvalidOperationException("Production export doesn't support searchable PDFs"); } string IFileNameProvider.GetPdfName(ObjectExportInfo exportedObjectInfo) { return this.GetPdfName(exportedObjectInfo); } private bool AreFilesNamedAfterIdentifier() { if (_exportSettings.TypeOfExport == ExportFile.ExportType.Production) return _exportSettings.ExportNativesToFileNamedFrom == ExportNativeWithFilenameFrom.Identifier; return false; } } }