protected NuGetPowerShellBaseCommand()
        {
            var componentModel = NuGetUIThreadHelper.JoinableTaskFactory.Run(ServiceLocator.GetComponentModelAsync);

            _sourceRepositoryProvider    = componentModel.GetService <ISourceRepositoryProvider>();
            ConfigSettings               = componentModel.GetService <ISettings>();
            VsSolutionManager            = componentModel.GetService <IVsSolutionManager>();
            SourceControlManagerProvider = componentModel.GetService <ISourceControlManagerProvider>();
            _commonOperations            = componentModel.GetService <ICommonOperations>();
            PackageRestoreManager        = componentModel.GetService <IPackageRestoreManager>();
            _deleteOnRestartManager      = componentModel.GetService <IDeleteOnRestartManager>();
            _nuGetProgressReporter       = componentModel.GetService <IRestoreProgressReporter>();
            DTE = ServiceLocator.GetInstance <DTE>();

            var logger = new LoggerAdapter(this);

            PackageExtractionContext = new PackageExtractionContext(
                PackageSaveMode.Defaultv2,
                PackageExtractionBehavior.XmlDocFileSaveMode,
                ClientPolicyContext.GetClientPolicy(ConfigSettings, logger),
                logger);

            if (_commonOperations != null)
            {
                ExecutionContext = new IDEExecutionContext(_commonOperations);
            }

            ActivityCorrelationId.StartNew();
        }
        public VsPackageInstaller(
            ISourceRepositoryProvider sourceRepositoryProvider,
            Configuration.ISettings settings,
            IVsSolutionManager solutionManager,
            IVsPackageInstallerServices packageServices,
            IDeleteOnRestartManager deleteOnRestartManager)
        {
            _sourceRepositoryProvider = sourceRepositoryProvider;
            _settings               = settings;
            _solutionManager        = solutionManager;
            _packageServices        = packageServices;
            _deleteOnRestartManager = deleteOnRestartManager;
            _isCPSJTFLoaded         = false;

            _projectContext = new Lazy <INuGetProjectContext>(() => {
                var projectContext        = new VSAPIProjectContext();
                var signedPackageVerifier = new PackageSignatureVerifier(SignatureVerificationProviderFactory.GetSignatureVerificationProviders());

                var logger = new LoggerAdapter(projectContext);
                projectContext.PackageExtractionContext = new PackageExtractionContext(
                    PackageSaveMode.Defaultv2,
                    PackageExtractionBehavior.XmlDocFileSaveMode,
                    logger,
                    signedPackageVerifier,
                    SignedPackageVerifierSettings.GetClientPolicy(_settings, logger));

                return(projectContext);
            });

            PumpingJTF = new PumpingJTF(NuGetUIThreadHelper.JoinableTaskFactory);
        }
示例#3
0
        internal InstallPackageCommand(
            ISolutionManager solutionManager,
            IVsPackageManagerFactory packageManagerFactory,
            IPackageRepositoryFactory repositoryFactory,
            IVsPackageSourceProvider packageSourceProvider,
            IHttpClientEvents httpClientEvents,
            IProductUpdateService productUpdateService,
            IVsCommonOperations vsCommonOperations,
            IDeleteOnRestartManager deleteOnRestartManager,
            bool networkAvailable)
            : base(solutionManager, packageManagerFactory, httpClientEvents, vsCommonOperations, deleteOnRestartManager)
        {
            _productUpdateService  = productUpdateService;
            _repositoryFactory     = repositoryFactory;
            _packageSourceProvider = packageSourceProvider;

            if (networkAvailable)
            {
                _isNetworkAvailable = isNetworkAvailable();
            }
            else
            {
                _isNetworkAvailable = false;
            }
        }
        internal SharedServiceState(ISourceRepositoryProvider sourceRepositoryProvider)
        {
            SourceRepositoryProvider = sourceRepositoryProvider;
            SourceRepositoryProvider.PackageSourceProvider.PackageSourcesChanged += PackageSourcesChanged;

            SolutionManager = new AsyncLazy <IVsSolutionManager>(
                ServiceLocator.GetInstanceAsync <IVsSolutionManager>,
                NuGetUIThreadHelper.JoinableTaskFactory);

            PackageManager = new AsyncLazy <NuGetPackageManager>(
                async() =>
            {
                IDeleteOnRestartManager deleteOnRestartManager = await ServiceLocator.GetInstanceAsync <IDeleteOnRestartManager>();
                ISettings settings = await ServiceLocator.GetInstanceAsync <ISettings>();
                IVsSolutionManager solutionManager = await SolutionManager.GetValueAsync(CancellationToken.None);

                return(new NuGetPackageManager(
                           SourceRepositoryProvider,
                           settings,
                           solutionManager,
                           deleteOnRestartManager));
            },
                NuGetUIThreadHelper.JoinableTaskFactory);

            SourceRepositories = new AsyncLazy <IReadOnlyCollection <SourceRepository> >(
                GetSourceRepositoriesAsync,
                NuGetUIThreadHelper.JoinableTaskFactory);
        }
示例#5
0
        public SharedServiceState()
        {
            SolutionManager = new AsyncLazy <IVsSolutionManager>(
                ServiceLocator.GetInstanceAsync <IVsSolutionManager>,
                NuGetUIThreadHelper.JoinableTaskFactory);

            SourceRepositoryProvider = new AsyncLazy <ISourceRepositoryProvider>(
                ServiceLocator.GetInstanceAsync <ISourceRepositoryProvider>,
                NuGetUIThreadHelper.JoinableTaskFactory);

            PackageManager = new AsyncLazy <NuGetPackageManager>(
                async() =>
            {
                IDeleteOnRestartManager deleteOnRestartManager = await ServiceLocator.GetInstanceAsync <IDeleteOnRestartManager>();
                ISettings settings = await ServiceLocator.GetInstanceAsync <ISettings>();
                IVsSolutionManager solutionManager = await SolutionManager.GetValueAsync(CancellationToken.None);
                ISourceRepositoryProvider sourceRepositoryProvider = await SourceRepositoryProvider.GetValueAsync(CancellationToken.None);

                return(new NuGetPackageManager(
                           sourceRepositoryProvider,
                           settings,
                           solutionManager,
                           deleteOnRestartManager));
            },
                NuGetUIThreadHelper.JoinableTaskFactory);
        }
        private PackageManagerWindow(Project project,
                                     DTE dte,
                                     IVsPackageManagerFactory packageManagerFactory,
                                     IPackageRepositoryFactory repositoryFactory,
                                     IPackageSourceProvider packageSourceProvider,
                                     IHttpClientEvents httpClientEvents,
                                     IProductUpdateService productUpdateService,
                                     IPackageRestoreManager packageRestoreManager,
                                     ISolutionManager solutionManager,
                                     IOptionsPageActivator optionPageActivator,
                                     IDeleteOnRestartManager deleteOnRestartManager,
                                     IVsShell4 vsRestarter,
                                     string dialogParameters)
            : base(F1Keyword)
        {
            InitializeComponent();

#if !VS10
            // set unique search guid for VS11
            explorer.SearchCategory = new Guid("{85566D5F-E585-411F-B299-5BF006E9F11E}");
#endif

            _httpClientEvents = httpClientEvents;
            if (_httpClientEvents != null)
            {
                _httpClientEvents.SendingRequest += OnSendingRequest;
            }

            _productUpdateService = productUpdateService;
            _optionsPageActivator = optionPageActivator;
            _activeProject        = project;

            // replace the ConsoleOutputProvider with SmartOutputConsoleProvider so that we can clear
            // the console the first time an entry is written to it
            var providerServices = new ProviderServices();
            _smartOutputConsoleProvider            = new SmartOutputConsoleProvider(providerServices.OutputConsoleProvider);
            providerServices.OutputConsoleProvider = _smartOutputConsoleProvider;
            _providerSettings = providerServices.ProviderSettings;

            AddUpdateBar(productUpdateService);
            AddRestoreBar(packageRestoreManager);
            var restartRequestBar = AddRestartRequestBar(deleteOnRestartManager, vsRestarter);
            InsertDisclaimerElement();
            AdjustSortComboBoxWidth();
            PreparePrereleaseComboBox();

            SetupProviders(
                project,
                dte,
                packageManagerFactory,
                repositoryFactory,
                packageSourceProvider,
                providerServices,
                httpClientEvents,
                solutionManager,
                packageRestoreManager,
                restartRequestBar);

            ProcessDialogParameters(dialogParameters);
        }
示例#7
0
        public PackageActionBaseCommand()
        {
            var componentModel = NuGetUIThreadHelper.JoinableTaskFactory.Run(ServiceLocator.GetComponentModelAsync);

            _deleteOnRestartManager = componentModel.GetService <IDeleteOnRestartManager>();
            _lockService            = componentModel.GetService <INuGetLockService>();
        }
示例#8
0
        protected NuGetPowerShellBaseCommand()
        {
            _sourceRepositoryProvider = ServiceLocator.GetInstance <ISourceRepositoryProvider>();
            ConfigSettings            = ServiceLocator.GetInstance <Configuration.ISettings>();
            VsSolutionManager         = ServiceLocator.GetInstance <IVsSolutionManager>();
            DTE = ServiceLocator.GetInstance <DTE>();
            SourceControlManagerProvider = ServiceLocator.GetInstance <ISourceControlManagerProvider>();
            _commonOperations            = ServiceLocator.GetInstance <ICommonOperations>();
            PackageRestoreManager        = ServiceLocator.GetInstance <IPackageRestoreManager>();
            _deleteOnRestartManager      = ServiceLocator.GetInstance <IDeleteOnRestartManager>();

            var logger = new LoggerAdapter(this);

            PackageExtractionContext = new PackageExtractionContext(
                PackageSaveMode.Defaultv2,
                PackageExtractionBehavior.XmlDocFileSaveMode,
                ClientPolicyContext.GetClientPolicy(ConfigSettings, logger),
                logger);

            if (_commonOperations != null)
            {
                ExecutionContext = new IDEExecutionContext(_commonOperations);
            }

            ActivityCorrelationId.StartNew();
        }
示例#9
0
        internal InstallPackageCommand(
            ISolutionManager solutionManager,
            IVsPackageManagerFactory packageManagerFactory,
            IPackageRepositoryFactory repositoryFactory,
            IVsPackageSourceProvider packageSourceProvider,
            IHttpClientEvents httpClientEvents,
            IProductUpdateService productUpdateService,
            IVsCommonOperations vsCommonOperations,
            IDeleteOnRestartManager deleteOnRestartManager,
            bool networkAvailable)
            : base(solutionManager, packageManagerFactory, httpClientEvents, vsCommonOperations, deleteOnRestartManager)
        {
            _productUpdateService = productUpdateService;
            _repositoryFactory = repositoryFactory;
            _packageSourceProvider = packageSourceProvider;
            DependencyVersion = DependencyVersion.Lowest;

            if (networkAvailable)
            {
                _isNetworkAvailable = isNetworkAvailable();
            }
            else
            {
                _isNetworkAvailable = false;
            }
        }
示例#10
0
        protected PowerShellHost(string name, IRestoreEvents restoreEvents, IRunspaceManager runspaceManager)
        {
            _restoreEvents   = restoreEvents;
            _runspaceManager = runspaceManager;

            // TODO: Take these as ctor arguments
            _sourceRepositoryProvider = ServiceLocator.GetInstance <ISourceRepositoryProvider>();
            _solutionManager          = ServiceLocator.GetInstance <IVsSolutionManager>();
            _settings = ServiceLocator.GetInstance <ISettings>();
            _deleteOnRestartManager = ServiceLocator.GetInstance <IDeleteOnRestartManager>();
            _scriptExecutor         = ServiceLocator.GetInstance <IScriptExecutor>();

            _dte = ServiceLocator.GetInstance <DTE>();
            _sourceControlManagerProvider = ServiceLocator.GetInstanceSafe <ISourceControlManagerProvider>();
            _commonOperations             = ServiceLocator.GetInstanceSafe <ICommonOperations>();
            PackageManagementContext      = new PackageManagementContext(_sourceRepositoryProvider, _solutionManager,
                                                                         _settings, _sourceControlManagerProvider, _commonOperations);

            _name            = name;
            IsCommandEnabled = true;

            InitializeSources();

            _sourceRepositoryProvider.PackageSourceProvider.PackageSourcesChanged += PackageSourceProvider_PackageSourcesChanged;
            _restoreEvents.SolutionRestoreCompleted += RestoreEvents_SolutionRestoreCompleted;
        }
示例#11
0
        private RestartRequestBar AddRestartRequestBar(IDeleteOnRestartManager deleteOnRestartManager, IVsShell4 vsRestarter)
        {
            var restartRequestBar = new RestartRequestBar(deleteOnRestartManager, vsRestarter);

            Grid.SetColumn(restartRequestBar, 1);
            BottomBar.Children.Insert(1, restartRequestBar);
            return(restartRequestBar);
        }
 public UninstallPackageCommand(ISolutionManager solutionManager,
                                IVsPackageManagerFactory packageManagerFactory,
                                IHttpClientEvents httpClientEvents,
                                IVsCommonOperations vsCommonOperations,
                                IDeleteOnRestartManager deleteOnRestartManager)
     : base(solutionManager, packageManagerFactory, httpClientEvents, vsCommonOperations, deleteOnRestartManager)
 {
 }
 public UninstallPackageCommand(ISolutionManager solutionManager,
                                IVsPackageManagerFactory packageManagerFactory,
                                IHttpClientEvents httpClientEvents,
                                IVsCommonOperations vsCommonOperations,
                                IDeleteOnRestartManager deleteOnRestartManager)
     : base(solutionManager, packageManagerFactory, httpClientEvents, vsCommonOperations, deleteOnRestartManager)
 {
 }
        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 packageManager = new NuGetPackageManager(
                sourceRepositoryProvider,
                settings,
                solutionManager,
                deleteOnRestartManager);

            var actionEngine = new UIActionEngine(
                sourceRepositoryProvider,
                packageManager,
                lockService);

            return(new NuGetUIContext(
                       sourceRepositoryProvider,
                       serviceBroker,
                       solutionManager,
                       solutionManagerServiceWrapper,
                       packageManager,
                       actionEngine,
                       packageRestoreManager,
                       optionsPageActivator,
                       userSettingsManager,
                       packageManagerProviders));
        }
        public static async Task <NuGetUI> CreateAsync(
            IServiceBroker serviceBroker,
            ICommonOperations commonOperations,
            NuGetUIProjectContext projectContext,
            ISourceRepositoryProvider sourceRepositoryProvider,
            ISettings settings,
            IVsSolutionManager solutionManager,
            IPackageRestoreManager packageRestoreManager,
            IOptionsPageActivator optionsPageActivator,
            IUserSettingsManager userSettingsManager,
            IDeleteOnRestartManager deleteOnRestartManager,
            SolutionUserOptions solutionUserOptions,
            INuGetLockService lockService,
            INuGetUILogger logger,
            IRestoreProgressReporter restoreProgressReporter,
            CancellationToken cancellationToken,
            params IProjectContextInfo[] projects)
        {
            Assumes.NotNull(serviceBroker);
            Assumes.NotNull(commonOperations);
            Assumes.NotNull(projectContext);
            Assumes.NotNull(sourceRepositoryProvider);
            Assumes.NotNull(settings);
            Assumes.NotNull(solutionManager);
            Assumes.NotNull(packageRestoreManager);
            Assumes.NotNull(optionsPageActivator);
            Assumes.NotNull(userSettingsManager);
            Assumes.NotNull(deleteOnRestartManager);
            Assumes.NotNull(solutionUserOptions);
            Assumes.NotNull(lockService);
            Assumes.NotNull(restoreProgressReporter);
            Assumes.NotNull(logger);

            cancellationToken.ThrowIfCancellationRequested();

            var nuGetUi = new NuGetUI(
                commonOperations,
                projectContext,
                logger)
            {
                UIContext = await NuGetUIContext.CreateAsync(
                    serviceBroker,
                    sourceRepositoryProvider,
                    settings,
                    solutionManager,
                    packageRestoreManager,
                    optionsPageActivator,
                    solutionUserOptions,
                    deleteOnRestartManager,
                    lockService,
                    restoreProgressReporter,
                    cancellationToken)
            };

            nuGetUi.UIContext.Projects = projects;

            return(nuGetUi);
        }
        private RestartRequestBar AddRestartRequestBar(IDeleteOnRestartManager deleteOnRestartManager, IVsShell4 vsRestarter)
        {
            var restartRequestBar = new RestartRequestBar(deleteOnRestartManager, vsRestarter);

            Grid.SetColumn(restartRequestBar, 1);
            BottomBar.Children.Insert(1, restartRequestBar);
            Loaded += restartRequestBar.NotifyOnUnsuccessfulUninstall;
            return(restartRequestBar);
        }
 public VsPackageInstallerServices(
     IVsSolutionManager solutionManager,
     ISourceRepositoryProvider sourceRepositoryProvider,
     ISettings settings,
     IDeleteOnRestartManager deleteOnRestartManager)
 {
     _solutionManager          = solutionManager;
     _sourceRepositoryProvider = sourceRepositoryProvider;
     _deleteOnRestartManager   = deleteOnRestartManager;
     _settings = settings;
 }
 protected ProcessPackageBaseCommand(
     ISolutionManager solutionManager, 
     IVsPackageManagerFactory packageManagerFactory, 
     IHttpClientEvents httpClientEvents,
     IVsCommonOperations vsCommonOperations,
     IDeleteOnRestartManager deleteOnRestartManager)
     : base(solutionManager, packageManagerFactory, httpClientEvents)
 {
     Debug.Assert(vsCommonOperations != null);
     _vsCommonOperations = vsCommonOperations;
     _deleteOnRestartManager = deleteOnRestartManager;
 }
示例#19
0
 protected ProcessPackageBaseCommand(
     ISolutionManager solutionManager,
     IVsPackageManagerFactory packageManagerFactory,
     IHttpClientEvents httpClientEvents,
     IVsCommonOperations vsCommonOperations,
     IDeleteOnRestartManager deleteOnRestartManager)
     : base(solutionManager, packageManagerFactory, httpClientEvents)
 {
     Debug.Assert(vsCommonOperations != null);
     _vsCommonOperations     = vsCommonOperations;
     _deleteOnRestartManager = deleteOnRestartManager;
 }
示例#20
0
        public VsPackageUninstaller(
            ISourceRepositoryProvider sourceRepositoryProvider,
            Configuration.ISettings settings,
            IVsSolutionManager solutionManager,
            IDeleteOnRestartManager deleteOnRestartManager)
        {
            _sourceRepositoryProvider = sourceRepositoryProvider;
            _settings        = settings;
            _solutionManager = solutionManager;

            PumpingJTF = new PumpingJTF(NuGetUIThreadHelper.JoinableTaskFactory);
            _deleteOnRestartManager = deleteOnRestartManager;
        }
示例#21
0
 public UpdatePackageCommand(ISolutionManager solutionManager,
                             IVsPackageManagerFactory packageManagerFactory,
                             IPackageRepositoryFactory repositoryFactory,
                             IVsPackageSourceProvider packageSourceProvider,
                             IHttpClientEvents httpClientEvents,
                             IProductUpdateService productUpdateService,
                             IVsCommonOperations vsCommonOperations,
                             IDeleteOnRestartManager deleteOnRestartManager)
     : base(solutionManager, packageManagerFactory, httpClientEvents, vsCommonOperations, deleteOnRestartManager)
 {
     _repositoryFactory = repositoryFactory;
     _packageSourceProvider = packageSourceProvider;
     _productUpdateService = productUpdateService;
 }
示例#22
0
        public async ValueTask <NuGetPackageManager> GetPackageManagerAsync(CancellationToken cancellationToken)
        {
            IDeleteOnRestartManager deleteOnRestartManager = await ServiceLocator.GetInstanceAsync <IDeleteOnRestartManager>();

            ISettings settings = await ServiceLocator.GetInstanceAsync <ISettings>();

            IVsSolutionManager solutionManager = await SolutionManager.GetValueAsync(cancellationToken);

            return(new NuGetPackageManager(
                       SourceRepositoryProvider,
                       settings,
                       solutionManager,
                       deleteOnRestartManager));
        }
 public PackageActionBaseCommand(
     IVsPackageSourceProvider packageSourceProvider,
     IPackageRepositoryFactory packageRepositoryFactory,
     SVsServiceProvider svcServiceProvider,
     IVsPackageManagerFactory packageManagerFactory,
     ISolutionManager solutionManager,
     IHttpClientEvents clientEvents,
     PackageActionType actionType)
     : base(packageSourceProvider, packageRepositoryFactory, svcServiceProvider, packageManagerFactory, solutionManager, clientEvents)
 {
     _actionType             = actionType;
     _vsCommonOperations     = ServiceLocator.GetInstance <IVsCommonOperations>();
     _deleteOnRestartManager = ServiceLocator.GetInstance <IDeleteOnRestartManager>();
 }
 public PackageActionBaseCommand(
     IVsPackageSourceProvider packageSourceProvider,
     IPackageRepositoryFactory packageRepositoryFactory,
     SVsServiceProvider svcServiceProvider,
     IVsPackageManagerFactory packageManagerFactory,
     ISolutionManager solutionManager,
     IHttpClientEvents clientEvents,
     PackageActionType actionType)
     : base(packageSourceProvider, packageRepositoryFactory, svcServiceProvider, packageManagerFactory, solutionManager, clientEvents)
 {
     _actionType = actionType;
     _vsCommonOperations = ServiceLocator.GetInstance<IVsCommonOperations>();
     _deleteOnRestartManager = ServiceLocator.GetInstance<IDeleteOnRestartManager>();
 }
示例#25
0
 public UpdatePackageCommand(ISolutionManager solutionManager,
                             IVsPackageManagerFactory packageManagerFactory,
                             IPackageRepositoryFactory repositoryFactory,
                             IVsPackageSourceProvider packageSourceProvider,
                             IHttpClientEvents httpClientEvents,
                             IProductUpdateService productUpdateService,
                             IVsCommonOperations vsCommonOperations,
                             IDeleteOnRestartManager deleteOnRestartManager)
     : base(solutionManager, packageManagerFactory, httpClientEvents, vsCommonOperations, deleteOnRestartManager)
 {
     _repositoryFactory     = repositoryFactory;
     _packageSourceProvider = packageSourceProvider;
     _productUpdateService  = productUpdateService;
 }
示例#26
0
        public VsPackageInstaller(
            ISourceRepositoryProvider sourceRepositoryProvider,
            ISettings settings,
            IVsSolutionManager solutionManager,
            IDeleteOnRestartManager deleteOnRestartManager)
        {
            _sourceRepositoryProvider = sourceRepositoryProvider;
            _settings               = settings;
            _solutionManager        = solutionManager;
            _deleteOnRestartManager = deleteOnRestartManager;
            _isCPSJTFLoaded         = false;

            PumpingJTF = new PumpingJTF(NuGetUIThreadHelper.JoinableTaskFactory);
        }
 public VsPackageInstallerServices(
     IVsSolutionManager solutionManager,
     ISourceRepositoryProvider sourceRepositoryProvider,
     ISettings settings,
     IDeleteOnRestartManager deleteOnRestartManager,
     IVsProjectThreadingService threadingService,
     INuGetTelemetryProvider telemetryProvider)
 {
     _solutionManager          = solutionManager;
     _sourceRepositoryProvider = sourceRepositoryProvider;
     _deleteOnRestartManager   = deleteOnRestartManager;
     _settings          = settings;
     _threadingService  = threadingService;
     _telemetryProvider = telemetryProvider;
 }
示例#28
0
 public VsPackageInstaller(
     ISourceRepositoryProvider sourceRepositoryProvider,
     Configuration.ISettings settings,
     ISolutionManager solutionManager,
     IVsPackageInstallerServices packageServices,
     IDeleteOnRestartManager deleteOnRestartManager)
 {
     _sourceRepositoryProvider = sourceRepositoryProvider;
     _settings               = settings;
     _solutionManager        = solutionManager;
     _projectContext         = new VSAPIProjectContext();
     _packageServices        = packageServices;
     _deleteOnRestartManager = deleteOnRestartManager;
     PumpingJTF              = new PumpingJTF(ThreadHelper.JoinableTaskContext);
 }
 public VisualStudioUIContextFactory([Import] ISourceRepositoryProvider repositoryProvider,
                                     [Import] ISolutionManager solutionManager,
                                     [Import] ISettings settings,
                                     [Import] IPackageRestoreManager packageRestoreManager,
                                     [Import] IOptionsPageActivator optionsPage,
                                     [Import] IDeleteOnRestartManager deleteOnRestartManager,
                                     [ImportMany] IEnumerable <Lazy <IVsPackageManagerProvider, IOrderable> > packageManagerProviders)
 {
     _repositoryProvider      = repositoryProvider;
     _solutionManager         = solutionManager;
     _restoreManager          = packageRestoreManager;
     _optionsPage             = optionsPage;
     _settings                = settings;
     _deleteOnRestartManager  = deleteOnRestartManager;
     _packageManagerProviders = PackageManagerProviderUtility.Sort(packageManagerProviders, MaxPackageManager);
 }
        public VsPackageInstaller(
            ISourceRepositoryProvider sourceRepositoryProvider,
            ISettings settings,
            IVsSolutionManager solutionManager,
            IDeleteOnRestartManager deleteOnRestartManager,
            INuGetTelemetryProvider telemetryProvider,
            IRestoreProgressReporter restoreProgressReporter)
        {
            _sourceRepositoryProvider = sourceRepositoryProvider;
            _settings                = settings;
            _solutionManager         = solutionManager;
            _deleteOnRestartManager  = deleteOnRestartManager;
            _telemetryProvider       = telemetryProvider;
            _restoreProgressReporter = restoreProgressReporter;

            PumpingJTF = new PumpingJTF(NuGetUIThreadHelper.JoinableTaskFactory);
        }
示例#31
0
        public VsPackageManager(ISolutionManager solutionManager,
                IPackageRepository sourceRepository,
                IFileSystemProvider fileSystemProvider,
                IFileSystem fileSystem,
                ISharedPackageRepository sharedRepository,
                IDeleteOnRestartManager deleteOnRestartManager,
                VsPackageInstallerEvents packageEvents)
            : base(sourceRepository, new DefaultPackagePathResolver(fileSystem), fileSystem, sharedRepository)
        {
            _solutionManager = solutionManager;
            _sharedRepository = sharedRepository;
            _packageEvents = packageEvents;
            _fileSystemProvider = fileSystemProvider;
            _deleteOnRestartManager = deleteOnRestartManager;

            _projects = new Dictionary<string, IProjectManager>(StringComparer.OrdinalIgnoreCase);
        }
示例#32
0
        protected NuGetPowerShellBaseCommand()
        {
            _sourceRepositoryProvider = ServiceLocator.GetInstance <ISourceRepositoryProvider>();
            ConfigSettings            = ServiceLocator.GetInstance <Configuration.ISettings>();
            VsSolutionManager         = ServiceLocator.GetInstance <IVsSolutionManager>();
            DTE = ServiceLocator.GetInstance <DTE>();
            SourceControlManagerProvider = ServiceLocator.GetInstance <ISourceControlManagerProvider>();
            _commonOperations            = ServiceLocator.GetInstance <ICommonOperations>();
            PackageRestoreManager        = ServiceLocator.GetInstance <IPackageRestoreManager>();
            _deleteOnRestartManager      = ServiceLocator.GetInstance <IDeleteOnRestartManager>();

            if (_commonOperations != null)
            {
                ExecutionContext = new IDEExecutionContext(_commonOperations);
            }

            ActivityCorrelationId.StartNew();
        }
        public VsPackageInstaller(
            ISourceRepositoryProvider sourceRepositoryProvider,
            Configuration.ISettings settings,
            IVsSolutionManager solutionManager,
            IVsPackageInstallerServices packageServices,
            IDeleteOnRestartManager deleteOnRestartManager)
        {
            _sourceRepositoryProvider = sourceRepositoryProvider;
            _settings               = settings;
            _solutionManager        = solutionManager;
            _packageServices        = packageServices;
            _deleteOnRestartManager = deleteOnRestartManager;
            _isCPSJTFLoaded         = false;

            _projectContext = new Lazy <INuGetProjectContext>(() => new VSAPIProjectContext());

            PumpingJTF = new PumpingJTF(NuGetUIThreadHelper.JoinableTaskFactory);
        }
 public VsPackageManager(ISolutionManager solutionManager,
         IPackageRepository sourceRepository,
         IFileSystemProvider fileSystemProvider,
         IFileSystem fileSystem,
         ISharedPackageRepository sharedRepository,
         IDeleteOnRestartManager deleteOnRestartManager,
         VsPackageInstallerEvents packageEvents,
         IVsFrameworkMultiTargeting frameworkMultiTargeting = null)
     : base(sourceRepository, new DefaultPackagePathResolver(fileSystem), fileSystem, sharedRepository)
 {
     _solutionManager = solutionManager;
     _sharedRepository = sharedRepository;
     _packageEvents = packageEvents;
     _fileSystemProvider = fileSystemProvider;
     _deleteOnRestartManager = deleteOnRestartManager;
     _frameworkMultiTargeting = frameworkMultiTargeting;
     _projects = new Dictionary<string, IProjectManager>(StringComparer.OrdinalIgnoreCase);
 }
        public ConsoleContainer(
            ISolutionManager solutionManager,
            IProductUpdateService productUpdateService,
            IPackageRestoreManager packageRestoreManager,
            IDeleteOnRestartManager deleteOnRestartManager,
            IVsShell4 shell)
        {
            InitializeComponent();

            RootLayout.Children.Add(new ProductUpdateBar(productUpdateService));
            RootLayout.Children.Add(new PackageRestoreBar(solutionManager, packageRestoreManager));
            RootLayout.Children.Add(new RestartRequestBar(deleteOnRestartManager, shell));

            // Set DynamicResource binding in code
            // The reason we can't set it in XAML is that the VsBrushes class come from either
            // Microsoft.VisualStudio.Shell.10 or Microsoft.VisualStudio.Shell.11 assembly,
            // depending on whether NuGet runs inside VS10 or VS11.
            InitializeText.SetResourceReference(TextBlock.ForegroundProperty, VsBrushes.WindowTextKey);
        }
        private VsPackageInstallerServices CreateTarget(
            IVsSolutionManager vsSolutionManager = null,
            ISourceRepositoryProvider sourceRepositoryProvider = null,
            ISettings settings = null,
            IDeleteOnRestartManager deleteOnRestartManager       = null,
            IVsProjectThreadingService vsProjectThreadingService = null,
            INuGetTelemetryProvider telemetryProvider            = null)
        {
            if (vsSolutionManager == null)
            {
                vsSolutionManager = new Mock <IVsSolutionManager>().Object;
            }

            if (sourceRepositoryProvider == null)
            {
                sourceRepositoryProvider = new Mock <ISourceRepositoryProvider>().Object;
            }

            if (settings == null)
            {
                settings = new Mock <ISettings>().Object;
            }

            if (deleteOnRestartManager == null)
            {
                deleteOnRestartManager = new Mock <IDeleteOnRestartManager>().Object;
            }

            if (vsProjectThreadingService == null)
            {
                vsProjectThreadingService = new TestProjectThreadingService();
            }

            if (telemetryProvider == null)
            {
                // Expected/user input errors should not be recorded as faults, hence use strict mode
                telemetryProvider = new Mock <INuGetTelemetryProvider>(MockBehavior.Strict).Object;
            }

            return(new VsPackageInstallerServices(vsSolutionManager, sourceRepositoryProvider, settings, deleteOnRestartManager, vsProjectThreadingService, telemetryProvider));
        }
 public MockVsPackageManager(
     ISolutionManager solutionManager,
     IPackageRepository sourceRepository,
     IFileSystemProvider fileSystemProvider,
     IFileSystem fileSystem,
     ISharedPackageRepository sharedRepository,
     IDeleteOnRestartManager deleteOnRestartManager,
     VsPackageInstallerEvents packageEvents) :
     base(
         solutionManager,
         sourceRepository,
         fileSystemProvider,
         fileSystem,
         sharedRepository,
         deleteOnRestartManager,
         packageEvents)
 {
 }
示例#38
0
 public RestartRequestBar(IDeleteOnRestartManager deleteOnRestartManager, IVsShell4 vsRestarter)
 {
     InitializeComponent();
     _deleteOnRestartManager = deleteOnRestartManager;
     _vsRestarter = vsRestarter;
 }
        private PackageManagerWindow(Project project,
                                    DTE dte,
                                    IVsPackageManagerFactory packageManagerFactory,
                                    IPackageRepositoryFactory repositoryFactory,
                                    IPackageSourceProvider packageSourceProvider,
                                    IHttpClientEvents httpClientEvents,
                                    IProductUpdateService productUpdateService,
                                    IPackageRestoreManager packageRestoreManager,
                                    ISolutionManager solutionManager,
                                    IOptionsPageActivator optionPageActivator,
                                    IDeleteOnRestartManager deleteOnRestartManager,
                                    IVsShell4 vsRestarter,
                                    string dialogParameters)
            : base(F1Keyword)
        {

            InitializeComponent();

#if !VS10
            // set unique search guid for VS11
            explorer.SearchCategory = new Guid("{85566D5F-E585-411F-B299-5BF006E9F11E}");
#endif

            _httpClientEvents = httpClientEvents;
            if (_httpClientEvents != null)
            {
                _httpClientEvents.SendingRequest += OnSendingRequest;
            }

            _productUpdateService = productUpdateService;
            _optionsPageActivator = optionPageActivator;
            _activeProject = project;

            // replace the ConsoleOutputProvider with SmartOutputConsoleProvider so that we can clear 
            // the console the first time an entry is written to it
            var providerServices = new ProviderServices();
            _smartOutputConsoleProvider = new SmartOutputConsoleProvider(providerServices.OutputConsoleProvider);
            providerServices.OutputConsoleProvider = _smartOutputConsoleProvider;
            _providerSettings = providerServices.ProviderSettings;
            _updateAllUIService = providerServices.UpdateAllUIService;
            providerServices.ProgressWindow.UpgradeNuGetRequested += (_, __) =>
                {
                    Close();
                    productUpdateService.Update();
                };

            AddUpdateBar(productUpdateService);
            AddRestoreBar(packageRestoreManager);
            var restartRequestBar = AddRestartRequestBar(deleteOnRestartManager, vsRestarter);
            InsertDisclaimerElement();
            AdjustSortComboBoxWidth();
            PreparePrereleaseComboBox();
            InsertUpdateAllButton(providerServices.UpdateAllUIService);

            SetupProviders(
                project,
                dte,
                packageManagerFactory,
                repositoryFactory,
                packageSourceProvider,
                providerServices,
                httpClientEvents,
                solutionManager,
                packageRestoreManager,
                restartRequestBar);

            ProcessDialogParameters(dialogParameters);
        }
 private RestartRequestBar AddRestartRequestBar(IDeleteOnRestartManager deleteOnRestartManager, IVsShell4 vsRestarter)
 {
     var restartRequestBar = new RestartRequestBar(deleteOnRestartManager, vsRestarter);
     Grid.SetColumn(restartRequestBar, 1);
     BottomBar.Children.Insert(1, restartRequestBar);
     return restartRequestBar;
 }