void RestorePackages(ProgressMonitor progressMonitor, ProgressMonitorStatusMessage progressMessage)
        {
            var msbuildTargetsMonitor = new MSBuildTargetsRestoredMonitor(packageManagementEvents);

            using (msbuildTargetsMonitor) {
                var action = new RestorePackagesAction(solution, packageManagementEvents);
                if (project != null)
                {
                    action.Project = project;
                }
                action.Execute();
            }

            RefreshProjectReferences(msbuildTargetsMonitor.AnyMSBuildTargetsRestored);
            ForceCreationOfSharedRepositoriesConfigFile();

            progressMonitor.ReportSuccess(progressMessage.Success);
            packageManagementEvents.OnPackagesRestored();
        }
		void RestorePackages (ProgressMonitor progressMonitor, ProgressMonitorStatusMessage progressMessage)
		{
			var msbuildTargetsMonitor = new MSBuildTargetsRestoredMonitor (packageManagementEvents);
			using (msbuildTargetsMonitor) {
				var action = new RestorePackagesAction (solution, packageManagementEvents);
				if (project != null) {
					action.Project = project;
				}
				action.Execute ();
			}

			RefreshProjectReferences (msbuildTargetsMonitor.AnyMSBuildTargetsRestored);
			ForceCreationOfSharedRepositoriesConfigFile ();

			progressMonitor.ReportSuccess (progressMessage.Success);
			packageManagementEvents.OnPackagesRestored ();
		}
		void CreateMonitor ()
		{
			packageEvents = new PackageManagementEvents ();
			monitor = new MSBuildTargetsRestoredMonitor (packageEvents);
		}