private static CopyFileOperation AcquireCopyFileOperation(LogAndDisplayController logDisplay) { var xmlPrep = new PrepareXMLFile(logDisplay); CopyFileOperation copyFileOperation; var xmlFile=String.Empty; try { if (logDisplay.CurrentApplicationMode.XmlFileMode == AppXmlMode.UserEnteredXmlFile && File.Exists(logDisplay.CurrentApplicationMode.ExternalXmlFile)) { xmlFile = logDisplay.CurrentApplicationMode.ExternalXmlFile; } else { xmlFile = xmlPrep.GetDefaultXMLPathAndFileName(); } if(string.IsNullOrEmpty(xmlFile)) { return null; } var fs = new FileStream(xmlFile, FileMode.Open); var serializer = new XmlSerializer(typeof(CopyFileOperation)); copyFileOperation = (CopyFileOperation)serializer.Deserialize(fs); } catch (Exception e) { logDisplay.LogAndDisplay(String.Format("Error reading XML File: {0}",xmlFile), e, LoggerMode.LogAndDisplayConsoleLine); return null; } return copyFileOperation; }
static void Main(string[] args) { var modes = ProcessCommandLineArguments(args); if(modes.ExecutionMode==AppExecutionMode.AbortAndExit) { Console.WriteLine("Terminating Application as requested!"); return; } if(modes.ExecutionMode==AppExecutionMode.DisplayHelp) { DisplayHelp(); return; } if(modes.StartupMode == AppStartUpMode.UserInterfaceMode) { modes = ExecuteUserInterfaceStartUp.DoStartUp(); } if(modes.ExecutionMode == AppExecutionMode.AbortAndExit) { Console.WriteLine("Application Terminating as requested..."); return; } var logDisplay = new LogAndDisplayController(modes); PerformCopyOperation(logDisplay); logDisplay.IssueCompletionMessage(); logDisplay.Dispose(); }
private static void PerformCopyOperation(LogAndDisplayController logDisplay) { var copyFileOp = AcquireCopyFileOperation(logDisplay); if(copyFileOp==null) { return; } var doCopyOp = new DoCopyOperation(logDisplay); doCopyOp.Execute(copyFileOp); }
public DoCopyOperation(LogAndDisplayController logDisplay) { _log = logDisplay; }
public FileUtility(LogAndDisplayController logDisplay) { _log = logDisplay; }
public PrepareXMLFile(LogAndDisplayController logDisplay) { _log = logDisplay; }