コード例 #1
0
 public StartupProjectRegistrar(
     IProjectThreadingService threadingService,
     [Import(typeof(IProjectGuidService))] IProjectGuidService2 projectGuidService,
     IActiveConfiguredProjectSubscriptionService projectSubscriptionService,
     ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders)
     : this(AsyncServiceProvider.GlobalProvider, threadingService, projectGuidService, projectSubscriptionService, launchProviders)
 {
 }
コード例 #2
0
 public StartupProjectRegistrar(
     UnconfiguredProject project,
     IProjectThreadingService threadingService,
     IActiveConfiguredProjectSubscriptionService projectSubscriptionService,
     ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders)
     : this(project, AsyncServiceProvider.GlobalProvider, threadingService, projectSubscriptionService, launchProviders)
 {
 }
コード例 #3
0
 public AssetsFileDependenciesDataSource(
     UnconfiguredProject unconfiguredProject,
     IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService,
     IActiveConfiguredProjectSnapshotService activeConfiguredProjectSnapshotService)
     : base(unconfiguredProject, synchronousDisposal: false, registerDataSource: false)
 {
     _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService;
     _activeConfiguredProjectSnapshotService     = activeConfiguredProjectSnapshotService;
 }
コード例 #4
0
 public StartupProjectRegistrar(
     IVsService <SVsStartupProjectsListService, IVsStartupProjectsListService> startupProjectsListService,
     IProjectThreadingService threadingService,
     IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService,
     ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders)
 {
     _startupProjectsListService = startupProjectsListService;
     _threadingService           = threadingService;
     _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService;
     _launchProviders = launchProviders;
 }
コード例 #5
0
        private async Task <StartupProjectRegistrar> CreateInitializedInstanceAsync(
            IVsStartupProjectsListService vsStartupProjectsListService = null,
            IProjectThreadingService threadingService  = null,
            ISafeProjectGuidService projectGuidService = null,
            IActiveConfiguredProjectSubscriptionService projectSubscriptionService = null,
            ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders      = null)
        {
            var instance = CreateInstance(vsStartupProjectsListService, threadingService, projectGuidService, projectSubscriptionService, launchProviders);
            await instance.InitializeAsync();

            return(instance);
        }
コード例 #6
0
 public StartupProjectRegistrar(
     IAsyncServiceProvider serviceProvider,
     IProjectThreadingService threadingService,
     IProjectGuidService2 projectGuidService,
     IActiveConfiguredProjectSubscriptionService projectSubscriptionService,
     ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders)
     : base(threadingService.JoinableTaskContext)
 {
     _serviceProvider            = serviceProvider;
     _threadingService           = threadingService;
     _projectGuidService         = projectGuidService;
     _projectSubscriptionService = projectSubscriptionService;
     _launchProviders            = launchProviders;
 }
コード例 #7
0
        public StartupProjectRegistrar(
            IVsService <SVsStartupProjectsListService, IVsStartupProjectsListService> startupProjectsListService,
            IProjectThreadingService threadingService,
            IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService,
            ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders)
        {
            Requires.NotNull(startupProjectsListService, nameof(startupProjectsListService));
            Requires.NotNull(threadingService, nameof(threadingService));
            Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService));
            Requires.NotNull(launchProviders, nameof(launchProviders));

            _startupProjectsListService = startupProjectsListService;
            _threadingService           = threadingService;
            _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService;
            _launchProviders = launchProviders;
        }
コード例 #8
0
        private StartupProjectRegistrar CreateInstance(
            IVsStartupProjectsListService vsStartupProjectsListService = null,
            IProjectThreadingService threadingService  = null,
            ISafeProjectGuidService projectGuidService = null,
            IActiveConfiguredProjectSubscriptionService projectSubscriptionService = null,
            ActiveConfiguredProject <DebuggerLaunchProviders> launchProviders      = null)
        {
            var instance = new StartupProjectRegistrar(
                null,
                IVsServiceFactory.Create <SVsStartupProjectsListService, IVsStartupProjectsListService>(vsStartupProjectsListService),
                threadingService ?? IProjectThreadingServiceFactory.Create(),
                projectGuidService ?? ISafeProjectGuidServiceFactory.ImplementGetProjectGuidAsync(Guid.NewGuid()),
                projectSubscriptionService ?? IActiveConfiguredProjectSubscriptionServiceFactory.Create(),
                launchProviders);

            return(instance);
        }
コード例 #9
0
        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;
        }
コード例 #10
0
 public TempPEBuildManager(IProjectThreadingService threadingService,
                           IUnconfiguredProjectCommonServices unconfiguredProjectServices,
                           IActiveWorkspaceProjectContextHost activeWorkspaceProjectContextHost,
                           IActiveConfiguredProjectSubscriptionService projectSubscriptionService,
                           ITempPECompiler compiler,
                           IFileSystem fileSystem,
                           IProjectFaultHandlerService projectFaultHandlerService,
                           VSBuildManager buildManager)
     : base(threadingService.JoinableTaskContext)
 {
     _unconfiguredProjectServices       = unconfiguredProjectServices;
     _activeWorkspaceProjectContextHost = activeWorkspaceProjectContextHost;
     _projectSubscriptionService        = projectSubscriptionService;
     _compiler   = compiler;
     _fileSystem = fileSystem;
     _projectFaultHandlerService = projectFaultHandlerService;
     BuildManager = buildManager;
 }
コード例 #11
0
        public ProjectAssetFileWatcher([Import(typeof(SVsServiceProvider))] IServiceProvider serviceProvider,
                                       [Import(ContractNames.ProjectTreeProviders.FileSystemDirectoryTree)] IProjectTreeProvider fileSystemTreeProvider,
                                       IUnconfiguredProjectCommonServices projectServices,
                                       IProjectLockService projectLockService,
                                       IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService)
        {
            Requires.NotNull(serviceProvider, nameof(serviceProvider));
            Requires.NotNull(fileSystemTreeProvider, nameof(fileSystemTreeProvider));
            Requires.NotNull(projectServices, nameof(projectServices));
            Requires.NotNull(projectLockService, nameof(projectLockService));
            Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService));

            _serviceProvider        = serviceProvider;
            _fileSystemTreeProvider = fileSystemTreeProvider;
            _projectServices        = projectServices;
            _projectLockService     = projectLockService;
            _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService;
        }
コード例 #12
0
 public LanguageServiceHost(IUnconfiguredProjectCommonServices commonServices,
                            Lazy <IProjectContextProvider> contextProvider,
                            [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService,
                            IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService,
                            IActiveProjectConfigurationRefreshService activeProjectConfigurationRefreshService,
                            LanguageServiceHandlerManager languageServiceHandlerManager)
     : base(commonServices.ThreadingService.JoinableTaskContext)
 {
     _commonServices  = commonServices;
     _contextProvider = contextProvider;
     _tasksService    = tasksService;
     _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService;
     _activeProjectConfigurationRefreshService   = activeProjectConfigurationRefreshService;
     _languageServiceHandlerManager          = languageServiceHandlerManager;
     _evaluationSubscriptionLinks            = new List <IDisposable>();
     _designTimeBuildSubscriptionLinks       = new List <IDisposable>();
     _projectConfigurationsWithSubscriptions = new HashSet <ProjectConfiguration>();
 }
コード例 #13
0
        public LanguageServiceHost(IUnconfiguredProjectCommonServices commonServices,
                                   Lazy <IProjectContextProvider> contextProvider,
                                   [Import(ExportContractNames.Scopes.UnconfiguredProject)] IProjectAsynchronousTasksService tasksService,
                                   IActiveConfiguredProjectSubscriptionService activeConfiguredProjectSubscriptionService)

            : base(commonServices.ThreadingService.JoinableTaskContext)
        {
            Requires.NotNull(contextProvider, nameof(contextProvider));
            Requires.NotNull(tasksService, nameof(tasksService));
            Requires.NotNull(activeConfiguredProjectSubscriptionService, nameof(activeConfiguredProjectSubscriptionService));

            _commonServices  = commonServices;
            _contextProvider = contextProvider;
            _tasksService    = tasksService;
            _activeConfiguredProjectSubscriptionService = activeConfiguredProjectSubscriptionService;

            Handlers = new OrderPrecedenceImportCollection <ILanguageServiceRuleHandler>(projectCapabilityCheckProvider: commonServices.Project);
        }