Relativity.DataExchange.Io.IoReporter
Represents a class object to perform I/O operations, publish warning messages, and retry the operation.
namespace Relativity.DataExchange.Io
{
public class IoReporter : IIoReporter
{
public IoReporterContext Context { get; }
protected IAppSettings CachedAppSettings { get; }
protected CancellationToken CancellationToken { get; }
protected int IoErrorNumberOfRetries { get; }
protected int IoErrorWaitTimeInSeconds { get; }
protected ILog Logger { get; }
public IoReporter(IoReporterContext context, ILog logger, CancellationToken token);
public static string BuildIoReporterWarningMessage(Exception exception, double timeoutSeconds);
public static string BuildIoReporterWarningMessage(Exception exception, double timeoutSeconds, int retryCount, int totalRetryCount);
public virtual void CopyFile(string sourceFileName, string destFileName, bool overwrite, int lineNumber);
public virtual bool GetFileExists(string fileName, int lineNumber);
public virtual long GetFileLength(string fileName, int lineNumber);
public virtual void PublishRetryMessage(Exception exception, TimeSpan timeSpan, int retryCount, int totalRetryCount, long lineNumber);
public virtual void PublishWarningMessage(IoWarningEventArgs args);
}
}