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

ImageValidator

using Microsoft.VisualBasic.CompilerServices; using OutsideIn; using System; using System.IO; namespace kCura.WinEDDS { public class ImageValidator : IImageValidator { public ImageValidationResult IsImageValid(string filePath, ITiffValidator tiffValidator, IFileInspector fileInspector) { try { return ValidateFileOrThrow(filePath, tiffValidator, fileInspector); } catch (Exception ex) { ProjectData.SetProjectError(ex); Exception ex2 = ex; string message = ex2.Message; ImageValidationResult result = new ImageValidationResult(false, ref message); ProjectData.ClearProjectError(); return result; } } ImageValidationResult IImageValidator.IsImageValid(string filePath, ITiffValidator tiffValidator, IFileInspector fileInspector) { return this.IsImageValid(filePath, tiffValidator, fileInspector); } private ImageValidationResult ValidateFileOrThrow(string filePath, ITiffValidator tiffValidator, IFileInspector fileInspector) { if (filePath == null) throw new ArgumentNullException("filePath"); if (tiffValidator == null) throw new ArgumentNullException("tiffValidator"); if (fileInspector == null) throw new ArgumentNullException("fileInspector"); string message; if (Operators.CompareString(filePath, string.Empty, false) != 0) { if (!File.Exists(filePath)) { message = $"""{filePath}"""; return new ImageValidationResult(false, ref message); } return ValidateExistingFile(filePath, tiffValidator, fileInspector); } message = "filePath argument is empty"; return new ImageValidationResult(false, ref message); } private ImageValidationResult ValidateExistingFile(string filePath, ITiffValidator tiffValidator, IFileInspector fileInspector) { FileFormat fileFormatByFilePath = fileInspector.GetFileFormatByFilePath(filePath); string message; if (fileFormatByFilePath.GetId() != 6210) { if (!((object)fileFormatByFilePath).Equals((object)FileFormat.FI_TIFF) && !((object)fileFormatByFilePath).Equals((object)FileFormat.FI_JPEGFIF)) { message = $"""{filePath}"""; return new ImageValidationResult(false, ref message); } if (!((object)fileFormatByFilePath).Equals((object)FileFormat.FI_TIFF)) { message = $"""{filePath}"""; return new ImageValidationResult(true, ref message); } return tiffValidator.ValidateTiffTags(filePath); } message = $"""{filePath}"""; return new ImageValidationResult(false, ref message); } } }