private void M_child_Disposed(object sender, EventArgs e) { if (Object.ReferenceEquals(sender, m_child)) { m_child.Disposed -= this.M_child_Disposed; m_child = null; } }
public IExecutionScopeStatusUpdate CreateProgressReporter(string text = "", TimeSpan expectedTime = default(TimeSpan), long progressMax = -1L, Func <long, string> progressFormatter = null) { if (m_child != null) { throw new Exception("Child status already active."); } //MiniLogger.Instance.Add("TaskUpdate(" + m_level + ").CreateProgressReporter( " + text + " )"); m_child = new ExecutionScopeStatusUpdaterMock(); m_child.m_level = m_level + 1; m_child.m_text = text; m_child.m_expectedTime = expectedTime; m_child.m_progressMax = progressMax; m_child.m_progressFormatter = progressFormatter; m_child.Disposed += M_child_Disposed; return(m_child); }
public ScriptExecutionTask( ILogger logger, ILogSinkManager logSinkManager, ILoadedFilesManager filesManager, TaskManager taskManager, IFileElement targetElement, object[] arguments) { m_logger = logger; m_logSinkManager = logSinkManager; m_filesManager = filesManager; m_taskManager = taskManager; m_targetElement = targetElement; m_arguments = arguments; m_taskContext = new ScriptTaskContext(); m_statusUpdate = new ExecutionScopeStatusUpdaterMock(); }