/// <summary> /// Files the processing. /// </summary> /// <param name="fileFullName">Full name of the file.</param> void IReplacerObserver.FileProcessing(string fileFullName) { this.fileProcessingStartTime = DateTime.Now; this.processingMessage = new LogMessage(); this.processingMessage.FileName = fileFullName; this.processingMessage.Message = string.Format("Processing file: {0}", fileFullName); this.AddMessage(this.processingMessage); }
/// <summary> /// Files the processed. /// </summary> /// <param name="fileFullName">Full name of the file.</param> /// <param name="sourceText">The source text.</param> /// <param name="resultText">The result text.</param> /// <returns>Whether file should be saved</returns> bool IReplacerObserver.FileProcessed(string fileFullName, string sourceText, string resultText) { DateTime time = DateTime.Now; TimeSpan timeTaken = time - this.fileProcessingStartTime; this.processingMessage.TimeStamp = time; this.processingMessage.Message = string.Format("File processed in {0:hh\\:mm\\:ss\\.fff} : {1}", timeTaken, fileFullName); this.processingMessage = null; return !string.Equals(sourceText, resultText, StringComparison.Ordinal); }
/// <summary> /// Receives the log message. /// </summary> /// <param name="message">The message.</param> void IReplacerObserver.ReceiveLogMessage(LogMessage message) { this.Log(message); }
/// <summary> /// Logs the specified message. /// </summary> /// <param name="message">The message.</param> private void Log(LogMessage message) { if (this.logToConsole) System.Console.WriteLine(message); if (this.logFile != null) { this.logFile.WriteLine(message.ToString()); this.logFile.Flush(); } }
/// <summary> /// Adds the message core. /// </summary> /// <param name="message">The message.</param> private void AddMessageCore(LogMessage message) { this.messageList.Add(message); if (this.listMessages.Rows.Count > 0 && (this.listMessages.FirstDisplayedScrollingRowIndex + this.listMessages.DisplayedRowCount(true)) >= this.listMessages.Rows.Count - 1) { this.listMessages.ClearSelection(); this.listMessages.Rows[this.listMessages.Rows.Count - 1].Selected = true; this.listMessages.FirstDisplayedScrollingRowIndex = this.listMessages.Rows.Count - 1; } }
/// <summary> /// Adds the message. /// </summary> /// <param name="message">The message.</param> private void AddMessage(LogMessage message) { ISynchronizeInvoke sync = this; if (sync.InvokeRequired) { Action<LogMessage> action = this.AddMessageCore; sync.Invoke(action, new object[]{message}); } else { this.AddMessageCore(message); } }