void PollForResults(bool drainQueues = false) { ShouldProcessPrompt process; while (_process.TryDequeue(out process)) { process.Completer.TrySetResult(CommandRuntime.ShouldProcess(process.Target, process.Message)); } ShouldContinuePrompt shouldContinue; while (_continue.TryDequeue(out shouldContinue)) { shouldContinue.Completer.TrySetResult(CommandRuntime.ShouldContinue(shouldContinue.Query, shouldContinue.Caption)); } ErrorRecord exception; while (_error.TryDequeue(out exception)) { CommandRuntime.WriteError(exception); } CmdletOutput output; while (_output.TryDequeue(out output)) { CommandRuntime.WriteObject(output.Output, output.Enumerate); } string logMessage; while (_warning.TryDequeue(out logMessage)) { CommandRuntime.WriteWarning(logMessage); } while (_verbose.TryDequeue(out logMessage)) { CommandRuntime.WriteVerbose(logMessage); } while (_debug.TryDequeue(out logMessage)) { CommandRuntime.WriteDebug(logMessage); } ProgressRecord progress; while (_progress.TryDequeue(out progress)) { CommandRuntime.WriteProgress(progress); } foreach (var progressItem in _progressTasks.Keys) { ReportTaskProgress(progressItem); } }
public void WriteVerbose(string text) { if (CommandRuntime == null) { throw new NotImplementedException("WriteVerbose"); } CommandRuntime.WriteVerbose(text); }