Ejemplo n.º 1
0
 public Worker(
     HostWorkspaceServices services,
     DiagnosticReporter diagnosticReporter,
     PathResolver pathResolver,
     ProjectFileLoaderRegistry projectFileLoaderRegistry,
     ProjectBuildManager buildManager,
     ImmutableArray <string> requestedProjectPaths,
     string baseDirectory,
     ImmutableDictionary <string, string> globalProperties,
     ProjectMap projectMap,
     IProgress <ProjectLoadProgress> progress,
     DiagnosticReportingOptions requestedProjectOptions,
     DiagnosticReportingOptions discoveredProjectOptions,
     bool preferMetadataForReferencesOfDiscoveredProjects)
 {
     _workspaceServices         = services;
     _diagnosticReporter        = diagnosticReporter;
     _pathResolver              = pathResolver;
     _projectFileLoaderRegistry = projectFileLoaderRegistry;
     _buildManager              = buildManager;
     _baseDirectory             = baseDirectory;
     _requestedProjectPaths     = requestedProjectPaths;
     _globalProperties          = globalProperties;
     _projectMap = projectMap ?? ProjectMap.Create();
     _progress   = progress;
     _requestedProjectOptions  = requestedProjectOptions;
     _discoveredProjectOptions = discoveredProjectOptions;
     _preferMetadataForReferencesOfDiscoveredProjects = preferMetadataForReferencesOfDiscoveredProjects;
     _projectIdToFileInfoMap          = new Dictionary <ProjectId, ProjectFileInfo>();
     _pathToDiscoveredProjectInfosMap = new Dictionary <string, ImmutableArray <ProjectInfo> >(PathUtilities.Comparer);
     _projectIdToProjectReferencesMap = new Dictionary <ProjectId, List <ProjectReference> >();
 }
Ejemplo n.º 2
0
 private MSBuildWorkspace(
     HostServices hostServices,
     ImmutableDictionary <string, string> properties)
     : base(hostServices, WorkspaceKind.MSBuild)
 {
     _reporter = new DiagnosticReporter(this);
     _projectFileLoaderRegistry = new ProjectFileLoaderRegistry(Services, _reporter);
     _loader = new MSBuildProjectLoader(Services, _reporter, _projectFileLoaderRegistry, properties);
 }
Ejemplo n.º 3
0
        internal MSBuildProjectLoader(
            HostWorkspaceServices workspaceServices,
            DiagnosticReporter diagnosticReporter,
            ProjectFileLoaderRegistry projectFileLoaderRegistry,
            ImmutableDictionary <string, string> properties)
        {
            _workspaceServices         = workspaceServices;
            _diagnosticReporter        = diagnosticReporter;
            _pathResolver              = new PathResolver(_diagnosticReporter);
            _projectFileLoaderRegistry = projectFileLoaderRegistry ?? new ProjectFileLoaderRegistry(workspaceServices, _diagnosticReporter);

            _properties = ImmutableDictionary.Create <string, string>(StringComparer.OrdinalIgnoreCase);

            if (properties != null)
            {
                _properties = _properties.AddRange(properties);
            }
        }