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

ProcessErrorReader

Represents a class object that can read error information from a delimited file.
using Microsoft.VisualBasic; using Relativity.DataExchange.Data; using Relativity.DataExchange.Io; using Relativity.Logging; using System.Data; using System.Globalization; using System.IO; using System.Threading; namespace Relativity.DataExchange.Process { internal class ProcessErrorReader : DelimitedFileImporter2 { public const string ColumnKey = "Key"; public const string ColumnStatus = "Status"; public const string ColumnDescription = "Description"; public const string ColumnTimestamp = "Timestamp"; public const int MaxRows = 1000; public ProcessErrorReader(IoReporterContext context, ILog logger, CancellationToken cancellationToken) : base(',', '"', Strings.ChrW(20), context, logger, cancellationToken) { } public override object ReadFile(string path) { base.Reader = new StreamReader(path); DataTable dataTable = new DataTable { Locale = CultureInfo.CurrentCulture }; dataTable.Columns.Add("Key"); dataTable.Columns.Add("Status"); dataTable.Columns.Add("Description"); dataTable.Columns.Add("Timestamp"); int num = 0; while (!HasReachedEof && num < 1000) { DataRowCollection rows = dataTable.Rows; object[] line = GetLine(); rows.Add(line); num++; } Close(); return new ProcessErrorReport { Report = dataTable, MaxLengthExceeded = (num >= 1000) }; } } }