public DependencySubscriptionsHost( IUnconfiguredProjectCommonServices commonServices, Lazy <IAggregateCrossTargetProjectContextProvider> contextProvider, [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService, ITargetFrameworkProvider targetFrameworkProvider, IAggregateDependenciesSnapshotProvider aggregateSnapshotProvider) : base(commonServices, contextProvider, tasksService, activeConfiguredProjectSubscriptionService, activeProjectConfigurationRefreshService) { CommonServices = commonServices; DependencySubscribers = new OrderPrecedenceImportCollection <IDependencyCrossTargetSubscriber>( projectCapabilityCheckProvider: commonServices.Project); SnapshotFilters = new OrderPrecedenceImportCollection <IDependenciesSnapshotFilter>( projectCapabilityCheckProvider: commonServices.Project, orderingStyle: ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast); SubTreeProviders = new OrderPrecedenceImportCollection <IProjectDependenciesSubTreeProvider>( ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast, projectCapabilityCheckProvider: commonServices.Project); DependenciesUpdateScheduler = new TaskDelayScheduler( _dependenciesUpdateThrottleInterval, commonServices.ThreadingService, tasksService.UnloadCancellationToken); TargetFrameworkProvider = targetFrameworkProvider; AggregateSnapshotProvider = aggregateSnapshotProvider; ProjectFilePath = CommonServices.Project.FullPath; }
public DependenciesSnapshotProvider( IUnconfiguredProjectCommonServices commonServices, Lazy <AggregateCrossTargetProjectContextProvider> contextProvider, IUnconfiguredProjectTasksService tasksService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService, ITargetFrameworkProvider targetFrameworkProvider) : base(commonServices.ThreadingService.JoinableTaskContext) { _commonServices = commonServices; _tasksService = tasksService; _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService; _targetFrameworkProvider = targetFrameworkProvider; _dependencySubscribers = new OrderPrecedenceImportCollection <IDependencyCrossTargetSubscriber>( projectCapabilityCheckProvider: commonServices.Project); _snapshotFilters = new OrderPrecedenceImportCollection <IDependenciesSnapshotFilter>( ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast, projectCapabilityCheckProvider: commonServices.Project); _subTreeProviders = new OrderPrecedenceImportCollection <IProjectDependenciesSubTreeProvider>( ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast, projectCapabilityCheckProvider: commonServices.Project); _context = new ContextTracker(targetFrameworkProvider, commonServices, contextProvider, activeProjectConfigurationRefreshService); _snapshot = new SnapshotUpdater(commonServices.ThreadingService, tasksService.UnloadCancellationToken); _disposables = new DisposableBag { _snapshot, _contextUpdateGate }; }
public NuGetRestorer( IUnconfiguredProjectVsServices projectVsServices, IVsSolutionRestoreService solutionRestoreService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService, ActiveConfiguredProjectsProvider activeConfiguredProjectsProvider) : base(projectVsServices.ThreadingService.JoinableTaskContext) { _projectVsServices = projectVsServices; _solutionRestoreService = solutionRestoreService; _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; _activeConfiguredProjectsProvider = activeConfiguredProjectsProvider; }
public ContextTracker( ITargetFrameworkProvider targetFrameworkProvider, IUnconfiguredProjectCommonServices commonServices, Lazy <AggregateCrossTargetProjectContextProvider> contextProvider, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService) { Requires.NotNull(targetFrameworkProvider, nameof(targetFrameworkProvider)); Requires.NotNull(commonServices, nameof(commonServices)); Requires.NotNull(contextProvider, nameof(contextProvider)); Requires.NotNull(activeProjectConfigurationRefreshService, nameof(activeProjectConfigurationRefreshService)); _targetFrameworkProvider = targetFrameworkProvider; _commonServices = commonServices; _contextProvider = contextProvider; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; }
public DependenciesSnapshotProvider( IUnconfiguredProjectCommonServices commonServices, Lazy <IAggregateCrossTargetProjectContextProvider> contextProvider, IUnconfiguredProjectTasksService tasksService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService, ITargetFrameworkProvider targetFrameworkProvider, IAggregateDependenciesSnapshotProvider aggregateSnapshotProvider) : base(commonServices.ThreadingService.JoinableTaskContext) { Requires.NotNull(contextProvider, nameof(contextProvider)); Requires.NotNull(tasksService, nameof(tasksService)); Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService)); Requires.NotNull(activeProjectConfigurationRefreshService, nameof(activeProjectConfigurationRefreshService)); Requires.NotNull(targetFrameworkProvider, nameof(targetFrameworkProvider)); Requires.NotNull(aggregateSnapshotProvider, nameof(aggregateSnapshotProvider)); _commonServices = commonServices; _contextProvider = contextProvider; _tasksService = tasksService; _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; _targetFrameworkProvider = targetFrameworkProvider; _currentSnapshot = DependenciesSnapshot.CreateEmpty(_commonServices.Project.FullPath); _dependencySubscribers = new OrderPrecedenceImportCollection <IDependencyCrossTargetSubscriber>( projectCapabilityCheckProvider: commonServices.Project); _snapshotFilters = new OrderPrecedenceImportCollection <IDependenciesSnapshotFilter>( ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast, projectCapabilityCheckProvider: commonServices.Project); _subTreeProviders = new OrderPrecedenceImportCollection <IProjectDependenciesSubTreeProvider>( ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast, projectCapabilityCheckProvider: commonServices.Project); _dependenciesUpdateScheduler = new TaskDelayScheduler( _dependenciesUpdateThrottleInterval, commonServices.ThreadingService, tasksService.UnloadCancellationToken); _snapshotChangedSource = DataflowBlockSlim.CreateBroadcastBlock <SnapshotChangedEventArgs>("DependenciesSnapshot {1}", skipIntermediateInputData: true); aggregateSnapshotProvider.RegisterSnapshotProvider(this); }
public DependencySubscriptionsHost( IUnconfiguredProjectCommonServices commonServices, Lazy <IAggregateCrossTargetProjectContextProvider> contextProvider, [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService, ITargetFrameworkProvider targetFrameworkProvider, IAggregateDependenciesSnapshotProvider aggregateSnapshotProvider) : base(commonServices.ThreadingService.JoinableTaskContext) { Requires.NotNull(contextProvider, nameof(contextProvider)); Requires.NotNull(tasksService, nameof(tasksService)); Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService)); Requires.NotNull(activeProjectConfigurationRefreshService, nameof(activeProjectConfigurationRefreshService)); Requires.NotNull(targetFrameworkProvider, nameof(targetFrameworkProvider)); Requires.NotNull(aggregateSnapshotProvider, nameof(aggregateSnapshotProvider)); _commonServices = commonServices; _contextProvider = contextProvider; _tasksService = tasksService; _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; _targetFrameworkProvider = targetFrameworkProvider; _aggregateSnapshotProvider = aggregateSnapshotProvider; _currentSnapshot = DependenciesSnapshot.CreateEmpty(_commonServices.Project.FullPath); _dependencySubscribers = new OrderPrecedenceImportCollection <IDependencyCrossTargetSubscriber>( projectCapabilityCheckProvider: commonServices.Project); _snapshotFilters = new OrderPrecedenceImportCollection <IDependenciesSnapshotFilter>( projectCapabilityCheckProvider: commonServices.Project, orderingStyle: ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast); _subTreeProviders = new OrderPrecedenceImportCollection <IProjectDependenciesSubTreeProvider>( ImportOrderPrecedenceComparer.PreferenceOrder.PreferredComesLast, projectCapabilityCheckProvider: commonServices.Project); _dependenciesUpdateScheduler = new TaskDelayScheduler( _dependenciesUpdateThrottleInterval, commonServices.ThreadingService, tasksService.UnloadCancellationToken); ProjectFilePath = commonServices.Project.FullPath; }
public LanguageServiceHost(IUnconfiguredProjectCommonServices commonServices, Lazy <IProjectContextProvider> contextProvider, [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService, LanguageServiceHandlerManager languageServiceHandlerManager, IUnconfiguredProjectTasksService unconfiguredProjectTasksService) : base(commonServices.ThreadingService.JoinableTaskContext) { _commonServices = commonServices; _contextProvider = contextProvider; _tasksService = tasksService; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; _languageServiceHandlerManager = languageServiceHandlerManager; _unconfiguredProjectTasksService = unconfiguredProjectTasksService; _evaluationSubscriptionLinks = new List <IDisposable>(); _designTimeBuildSubscriptionLinks = new List <IDisposable>(); _projectConfigurationsWithSubscriptions = new HashSet <ProjectConfiguration>(); }
public CrossTargetSubscriptionHostBase(IUnconfiguredProjectCommonServices commonServices, Lazy <IAggregateCrossTargetProjectContextProvider> contextProvider, [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService) : base(commonServices.ThreadingService.JoinableTaskContext) { Requires.NotNull(contextProvider, nameof(contextProvider)); Requires.NotNull(tasksService, nameof(tasksService)); Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService)); Requires.NotNull(activeProjectConfigurationRefreshService, nameof(activeProjectConfigurationRefreshService)); _commonServices = commonServices; _contextProvider = contextProvider; _tasksService = tasksService; _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; _evaluationSubscriptionLinks = new List <IDisposable>(); }
public LanguageServiceHost(IUnconfiguredProjectCommonServices commonServices, Lazy <IProjectContextProvider> contextProvider, [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService, IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService, IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService) : base(commonServices.ThreadingService.JoinableTaskContext) { Requires.NotNull(contextProvider, nameof(contextProvider)); Requires.NotNull(tasksService, nameof(tasksService)); Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService)); Requires.NotNull(activeProjectConfigurationRefreshService, nameof(activeProjectConfigurationRefreshService)); _commonServices = commonServices; _contextProvider = contextProvider; _tasksService = tasksService; _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService; _activeProjectConfigurationRefreshService = activeProjectConfigurationRefreshService; Handlers = new OrderPrecedenceImportCollection <ILanguageServiceRuleHandler>(projectCapabilityCheckProvider: commonServices.Project); _evaluationSubscriptionLinks = new List <IDisposable>(); _designTimeBuildSubscriptionLinks = new List <IDisposable>(); }