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

NativeSettingsFactory

using Microsoft.VisualBasic.CompilerServices; using Relativity.DataExchange.Service; using System; using System.Net; using System.Text; namespace kCura.WinEDDS { public class NativeSettingsFactory : SettingsFactoryBase { private LoadFile _loadFile; private DocumentFieldCollection _docFields; public int CaseArtifactID { set { _loadFile.CaseInfo = base.CaseManager.Read(value); _loadFile.CaseDefaultPath = _loadFile.CaseInfo.DocumentPath; _loadFile.DestinationFolderID = _loadFile.CaseInfo.RootFolderID; _docFields = base.FieldQuery.RetrieveAllAsDocumentFieldCollection(value, 10); } } public string SourceFilePath { set { _loadFile.FilePath = value; } } public bool CopyFilesToDocumentRepository { set { _loadFile.CopyFilesToDocumentRepository = value; } } public bool CreateFolderStructure { set { _loadFile.CreateFolderStructure = value; } } public int DestinationFolderID { set { _loadFile.DestinationFolderID = value; } } public Encoding ExtractedTextFileEncoding { set { _loadFile.ExtractedTextFileEncoding = value; _loadFile.ExtractedTextFileEncodingName = SqlNameHelper.GetSqlFriendlyName(_loadFile.ExtractedTextFileEncoding.EncodingName).ToLower(); } } public bool FirstLineContainsHeaders { set { _loadFile.FirstLineContainsHeaders = value; } } public string FolderStructureContainedInColumn { set { _loadFile.FolderStructureContainedInColumn = value; } } public bool FullTextColumnContainsFileLocation { set { _loadFile.FullTextColumnContainsFileLocation = value; } } public char HierarchicalValueDelimiter { set { _loadFile.HierarchicalValueDelimiter = value; } } public bool LoadNativeFiles { set { _loadFile.LoadNativeFiles = value; } } public char MultiRecordDelimiter { set { _loadFile.MultiRecordDelimiter = value; } } public int NativeFilePathColumnIndex { set { if (value == -1) _loadFile.NativeFilePathColumn = null; else _loadFile.NativeFilePathColumn = "(" + Conversions.ToString(checked(value + 1)) + ")"; } } public char NewlineProxy { set { _loadFile.NewlineDelimiter = value; } } public OverwriteType OverwriteDestination { set { ImportOverwriteType importOverwriteType; switch (value) { case OverwriteType.Append: { LoadFile loadFile3 = _loadFile; importOverwriteType = ImportOverwriteType.Append; loadFile3.OverwriteDestination = importOverwriteType.ToString(); break; } case OverwriteType.AppendOverlay: { LoadFile loadFile2 = _loadFile; importOverwriteType = ImportOverwriteType.AppendOverlay; loadFile2.OverwriteDestination = importOverwriteType.ToString(); break; } case OverwriteType.Overlay: { LoadFile loadFile = _loadFile; importOverwriteType = ImportOverwriteType.Overlay; loadFile.OverwriteDestination = importOverwriteType.ToString(); break; } } } } public char QuoteProxy { set { _loadFile.QuoteDelimiter = value; } } public char RecordDelimiter { set { _loadFile.RecordDelimiter = value; } } public string SelectedDestinationRepository { set { _loadFile.SelectedCasePath = value; } } public Encoding SourceFileEncoding { set { _loadFile.SourceFileEncoding = value; } } public NativeSettingsFactory(NetworkCredential credential, int caseArtifactID, Func<string> correlationIdFunc) : base(credential, correlationIdFunc) { InitloadFile(caseArtifactID); } public NativeSettingsFactory(string login, string password, int caseArtifactID, Func<string> correlationIdFunc) : base(login, password, correlationIdFunc) { InitloadFile(caseArtifactID); } private void InitloadFile(int caseArtifactID) { _loadFile = new LoadFile(); _loadFile.ArtifactTypeID = 10; _loadFile.CookieContainer = base.CookieContainer; _loadFile.CopyFilesToDocumentRepository = true; _loadFile.CreateFolderStructure = false; _loadFile.Credentials = base.Credential; _loadFile.ExtractedTextFileEncoding = Encoding.Default; _loadFile.ExtractedTextFileEncodingName = SqlNameHelper.GetSqlFriendlyName(_loadFile.ExtractedTextFileEncoding.EncodingName).ToLower(); _loadFile.FieldMap = new LoadFileFieldMap(); _loadFile.FirstLineContainsHeaders = true; _loadFile.FolderStructureContainedInColumn = null; _loadFile.FullTextColumnContainsFileLocation = false; _loadFile.GroupIdentifierColumn = ""; _loadFile.DataGridIDColumn = ""; _loadFile.HierarchicalValueDelimiter = '\\'; _loadFile.LoadNativeFiles = false; _loadFile.MultiRecordDelimiter = ';'; _loadFile.NativeFilePathColumn = null; _loadFile.NewlineDelimiter = '®'; _loadFile.OverwriteDestination = ((Enum)0).ToString(); _loadFile.QuoteDelimiter = 'þ'; _loadFile.RecordDelimiter = ''; _loadFile.SourceFileEncoding = Encoding.Default; CaseArtifactID = caseArtifactID; _loadFile.SelectedCasePath = _loadFile.CaseInfo.DocumentPath; _loadFile.SelectedIdentifierField = _docFields.IdentifierFields()[0]; } public void AddMappedItem(int sourceColumnIndex, int fieldArtifactID) { AddMappedItem(sourceColumnIndex, _docFields.Item(fieldArtifactID)); } public void AddMappedItem(int sourceColumnIndex, string fieldDisplayName) { AddMappedItem(sourceColumnIndex, _docFields.Item(fieldDisplayName)); } public void AddMappedItem(int sourceColumnIndex, DocumentField field) { _loadFile.FieldMap.Add(new LoadFileFieldMap.LoadFileFieldMapItem(field, sourceColumnIndex)); } public override void Save(string location) { SaveObject(location, _loadFile); } public LoadFile ToLoadFile() { return _loadFile; } } }