public ImageFileConverter(IFileParser fileParser, IOutputSupplier outputSupplier) : base(fileParser, outputSupplier) { }
private async Task startInBg() { var outputDir = txtOutputRootDir.Text; ConvertConfig convertConfig = new ConvertConfig() { KeepIntermediateFiles = chkOutputTxt.IsChecked ?? false, ChangeDateTimes = chkChangeDateTimes.IsChecked ?? false, RootDir = txtRootDir.Text, OutputDir = outputDir, Filter = txtWalkdirFilter.Text, NewCreatedTime = dpCreatedDT.Value, NewModifiedTime = dpModifiedDT.Value, }; if (chkOutlookMsg.IsChecked ?? false) { convertConfig.SourceFiles |= FileType.OUTLOOK_MSG; } if (chkWord.IsChecked ?? false) { convertConfig.SourceFiles |= FileType.WORD; } if (chkPowerpoint.IsChecked ?? false) { convertConfig.SourceFiles |= FileType.POWERPOINT; } if (chkExcel.IsChecked ?? false) { convertConfig.SourceFiles |= FileType.EXCEL; } if (chkCopyImages.IsChecked ?? false) { convertConfig.SourceFiles |= FileType.IMAGES; } if (chkOutlookPst.IsChecked ?? false) { convertConfig.SourceFiles |= FileType.OUTLOOK_PST; } IOutputSupplier outputSupplier = OutputSupplier.GetDefaultInstance(journalEntryAdded, errorEntryAdded); await Task.Run(async() => { if (!Directory.Exists(convertConfig.OutputDir)) { Directory.CreateDirectory(convertConfig.OutputDir); } if ((convertConfig.SourceFiles & FileType.OUTLOOK_MSG) == FileType.OUTLOOK_MSG) { FileConverter outlookFileConverter = new OutlookMsgConverter(new OutlookMsgParser(), outputSupplier); await outlookFileConverter.ProcessInBackgroundAsync(convertConfig); } FileType officeFiles = FileType.WORD | FileType.POWERPOINT | FileType.EXCEL; if ((convertConfig.SourceFiles & officeFiles) == (officeFiles)) { FileConverter officeFileConverter = new OfficeFileConverter(new OfficeFileParser(), outputSupplier); await officeFileConverter.ProcessInBackgroundAsync(convertConfig); } if ((convertConfig.SourceFiles & FileType.IMAGES) == FileType.IMAGES) { FileConverter fileTransferrer = new ImageFileConverter(new ImageFileParser(), outputSupplier); await fileTransferrer.ProcessInBackgroundAsync(convertConfig); } if ((convertConfig.SourceFiles & FileType.OUTLOOK_PST) == FileType.OUTLOOK_PST) { OutlookPstConverter pstConverter = new OutlookPstConverter(new OutlookPstParser(), outputSupplier); await pstConverter.ProcessInBackgroundAsync(convertConfig); } }); if (convertConfig.ChangeDateTimes) { await Task.Run(async() => { FileConverter dateTimeConverter = new DateTimeConverter(new GeneralPurposeParser(), outputSupplier); await dateTimeConverter.ProcessInBackgroundAsync(convertConfig); }); } }
public OutlookMsgConverter(IFileParser fileParser, IOutputSupplier outputSupplier) : base(fileParser, outputSupplier) { }
public FileConverter(IFileParser fileParser, IOutputSupplier outputSupplier) { _fileParser = fileParser; Output = outputSupplier; }
public DateTimeConverter(IFileParser fileParser, IOutputSupplier outputSupplier) : base(fileParser, outputSupplier) { }