void RunInternal (IProgressMonitor progressMonitor, ProgressMonitorStatusMessage progressMessage) { var commandLine = new MonoPclCommandLine () { List = true }; commandLine.BuildCommandLine (); progressMonitor.ShowPackageConsole (); progressMonitor.Log.WriteLine (commandLine.ToString ()); progressMonitor.Log.WriteLine (); RunMonoPcl (progressMonitor, progressMessage, commandLine); }
void RunMonoPcl ( IProgressMonitor progressMonitor, ProgressMonitorStatusMessage progressMessage, MonoPclCommandLine commandLine) { var aggregatedMonitor = (PackageManagementProgressMonitor)progressMonitor; Runtime.ProcessService.StartConsoleProcess ( commandLine.Command, commandLine.Arguments, commandLine.WorkingDirectory, aggregatedMonitor.Console, (sender, e) => { using (progressMonitor) { ReportOutcome ((IAsyncOperation)sender, progressMonitor, progressMessage); } } ); }