// Non-private only to facilitate testing. internal NuGetUIContext( IServiceBroker serviceBroker, IVsSolutionManager solutionManager, NuGetSolutionManagerServiceWrapper solutionManagerService, NuGetPackageManager packageManager, UIActionEngine uiActionEngine, IPackageRestoreManager packageRestoreManager, IOptionsPageActivator optionsPageActivator, IUserSettingsManager userSettingsManager, IEnumerable <IVsPackageManagerProvider> packageManagerProviders, NuGetSourcesServiceWrapper sourceService) { ServiceBroker = serviceBroker; SolutionManager = solutionManager; _solutionManagerService = solutionManagerService; PackageManager = packageManager; UIActionEngine = uiActionEngine; PackageManager = packageManager; PackageRestoreManager = packageRestoreManager; OptionsPageActivator = optionsPageActivator; UserSettingsManager = userSettingsManager; PackageManagerProviders = packageManagerProviders; _sourceService = sourceService; ServiceBroker.AvailabilityChanged += OnAvailabilityChanged; SolutionManager.ActionsExecuted += OnActionsExecuted; }
// Non-private only to facilitate testing. internal NuGetUIContext( IServiceBroker serviceBroker, IReconnectingNuGetSearchService nuGetSearchService, IVsSolutionManager solutionManager, NuGetSolutionManagerServiceWrapper solutionManagerService, NuGetPackageManager packageManager, UIActionEngine uiActionEngine, IPackageRestoreManager packageRestoreManager, IOptionsPageActivator optionsPageActivator, IUserSettingsManager userSettingsManager, NuGetSourcesServiceWrapper sourceService) { ServiceBroker = serviceBroker; ReconnectingSearchService = nuGetSearchService; SolutionManager = solutionManager; _solutionManagerService = solutionManagerService; PackageManager = packageManager; UIActionEngine = uiActionEngine; PackageManager = packageManager; PackageRestoreManager = packageRestoreManager; OptionsPageActivator = optionsPageActivator; UserSettingsManager = userSettingsManager; _sourceService = sourceService; ServiceBroker.AvailabilityChanged += OnAvailabilityChanged; SolutionManager.ActionsExecuted += OnActionsExecuted; }
public static async ValueTask <NuGetUIContext> CreateAsync( IServiceBroker serviceBroker, ISourceRepositoryProvider sourceRepositoryProvider, ISettings settings, IVsSolutionManager solutionManager, IPackageRestoreManager packageRestoreManager, IOptionsPageActivator optionsPageActivator, IUserSettingsManager userSettingsManager, IDeleteOnRestartManager deleteOnRestartManager, IEnumerable <IVsPackageManagerProvider> packageManagerProviders, INuGetLockService lockService, CancellationToken cancellationToken) { Assumes.NotNull(serviceBroker); Assumes.NotNull(sourceRepositoryProvider); Assumes.NotNull(settings); Assumes.NotNull(solutionManager); Assumes.NotNull(packageRestoreManager); Assumes.NotNull(optionsPageActivator); Assumes.NotNull(userSettingsManager); Assumes.NotNull(deleteOnRestartManager); Assumes.NotNull(packageManagerProviders); Assumes.NotNull(lockService); cancellationToken.ThrowIfCancellationRequested(); var solutionManagerServiceWrapper = new NuGetSolutionManagerServiceWrapper(); INuGetSolutionManagerService solutionManagerService = await GetSolutionManagerServiceAsync(serviceBroker, cancellationToken); // The initial Swap(...) should return a null implementation of the interface that does not require disposal. // However, there's no harm in following form. using (solutionManagerServiceWrapper.Swap(solutionManagerService)) { } var sourceServiceWrapper = new NuGetSourcesServiceWrapper(); INuGetSourcesService sourceService = await GetSourceServiceAsync(serviceBroker, cancellationToken); using (sourceServiceWrapper.Swap(sourceService)) { } var packageManager = new NuGetPackageManager( sourceRepositoryProvider, settings, solutionManager, deleteOnRestartManager); var actionEngine = new UIActionEngine( sourceRepositoryProvider, packageManager, lockService); return(new NuGetUIContext( serviceBroker, solutionManager, solutionManagerServiceWrapper, packageManager, actionEngine, packageRestoreManager, optionsPageActivator, userSettingsManager, packageManagerProviders, sourceServiceWrapper)); }
public static async ValueTask <NuGetUIContext> CreateAsync( IServiceBroker serviceBroker, ISourceRepositoryProvider sourceRepositoryProvider, ISettings settings, IVsSolutionManager solutionManager, IPackageRestoreManager packageRestoreManager, IOptionsPageActivator optionsPageActivator, IUserSettingsManager userSettingsManager, IDeleteOnRestartManager deleteOnRestartManager, INuGetLockService lockService, IRestoreProgressReporter restoreProgressReporter, CancellationToken cancellationToken) { Assumes.NotNull(serviceBroker); Assumes.NotNull(sourceRepositoryProvider); Assumes.NotNull(settings); Assumes.NotNull(solutionManager); Assumes.NotNull(packageRestoreManager); Assumes.NotNull(optionsPageActivator); Assumes.NotNull(userSettingsManager); Assumes.NotNull(deleteOnRestartManager); Assumes.NotNull(lockService); Assumes.NotNull(restoreProgressReporter); cancellationToken.ThrowIfCancellationRequested(); var solutionManagerServiceWrapper = new NuGetSolutionManagerServiceWrapper(); INuGetSolutionManagerService solutionManagerService = await GetSolutionManagerServiceAsync(serviceBroker, cancellationToken); // The initial Swap(...) should return a null implementation of the interface that does not require disposal. // However, there's no harm in following form. using (solutionManagerServiceWrapper.Swap(solutionManagerService)) { } var sourceServiceWrapper = new NuGetSourcesServiceWrapper(); INuGetSourcesService sourceService = await GetSourceServiceAsync(serviceBroker, cancellationToken); using (sourceServiceWrapper.Swap(sourceService)) { } #pragma warning disable CA2000 // Dispose objects before losing scope - NuGetUIContext owns the instance and should dispose it. var searchService = await NuGetSearchServiceReconnector.CreateAsync(serviceBroker, NuGetUIThreadHelper.JoinableTaskFactory, cancellationToken); #pragma warning restore CA2000 // Dispose objects before losing scope var packageManager = new NuGetPackageManager( sourceRepositoryProvider, settings, solutionManager, deleteOnRestartManager, restoreProgressReporter); var actionEngine = new UIActionEngine( sourceRepositoryProvider, packageManager, lockService); return(new NuGetUIContext( serviceBroker, searchService.Object, solutionManager, solutionManagerServiceWrapper, packageManager, actionEngine, packageRestoreManager, optionsPageActivator, userSettingsManager, sourceServiceWrapper)); }