Messenger
using kCura.WinEDDS;
using Relativity.DataExchange.Process;
using Relativity.Logging;
using System;
namespace Relativity.DataExchange.Export.VolumeManagerV2.Statistics
{
public class Messenger : IMessenger
{
private readonly ExportFile _exportSettings;
private readonly IDownloadProgress _downloadProgress;
private readonly IStatus _status;
private readonly ILog _logger;
public Messenger(ExportFile exportSettings, IDownloadProgress downloadProgress, IStatus status, ILog logger)
{
_exportSettings = exportSettings;
_downloadProgress = downloadProgress;
_status = status;
_logger = logger;
}
public void CreatingImageLoadFileMetadata()
{
if (_exportSettings.ExportImages) {
_logger.LogVerbose("Creating image load file.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Creating image load file.", true);
}
}
public void CreatingLoadFileMetadata()
{
if (_exportSettings.ExportNative) {
_logger.LogVerbose("Creating load file.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Creating load file.", true);
}
}
public void StartingRollupImages()
{
int num;
if (_exportSettings.ExportImages && _exportSettings.VolumeInfo.CopyImageFilesFromRepository) {
ExportFile.ImageType? typeOfImage = _exportSettings.TypeOfImage;
ExportFile.ImageType imageType = ExportFile.ImageType.MultiPageTiff;
if (!((typeOfImage.GetValueOrDefault() == imageType) & typeOfImage.HasValue)) {
typeOfImage = _exportSettings.TypeOfImage;
imageType = ExportFile.ImageType.Pdf;
num = (((typeOfImage.GetValueOrDefault() == imageType) & typeOfImage.HasValue) ? 1 : 0);
} else
num = 1;
} else
num = 0;
if (num != 0) {
_logger.LogVerbose("Attempting to rollup images.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Attempting to rollup images.", true);
}
}
public void PreparingBatchForExport()
{
_logger.LogVerbose("Preparing batch for export.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Preparing batch for export.", true);
}
public void ValidatingBatch()
{
_logger.LogVerbose("Validating batch after export.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Validating batch after export.", true);
}
public void RestoringAfterCancel()
{
_logger.LogVerbose("Export has been canceled. Restoring state from previous batch.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Export has been canceled. Restoring state from previous batch.", true);
}
public void BatchCompleted()
{
_logger.LogVerbose("Batch completed.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Batch completed.", true);
}
public void DownloadingBatch()
{
_logger.LogVerbose("Downloading files for batch.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "Downloading files for batch.", true);
}
public void FilesDownloadCompleted()
{
_logger.LogVerbose("Documents for batch downloaded.", Array.Empty<object>());
_downloadProgress.FinalizeBatchProcessedCount();
_status.WriteStatusLine(EventType2.Progress, "Documents for batch downloaded.", true);
}
public void StateRestored()
{
_logger.LogVerbose("State from previous batch restored.", Array.Empty<object>());
_status.WriteStatusLine(EventType2.Status, "State from previous batch restored.", true);
}
}
}