diff options
author | Lluis Sanchez <llsan@microsoft.com> | 2019-02-15 20:57:44 +0300 |
---|---|---|
committer | Lluis Sanchez <llsan@microsoft.com> | 2019-02-15 21:12:42 +0300 |
commit | ca94e4851759c70a3f44e6ed4d2d1f3296ed0bcf (patch) | |
tree | 5247748423d0211b13b2dbd1c219a95f8602cb34 /main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs | |
parent | 3f08768e1c48470d3c77365bf1225e2f48ad8fbc (diff) |
Convert several IDE services into Service instances
The new IdeServices class has references to the core IDE services.
Revamped the IDE initialization code. The UI loop is started earlier and
that allows starting the services asynchronously.
Code that previously was referencing static service classes or services
available in IdeApp now reference IdeServices.
Diffstat (limited to 'main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs')
-rw-r--r-- | main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs index 1293ad41d8..b059f08a0e 100644 --- a/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs +++ b/main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.TypeSystem/MonoDevelopWorkspace.ProjectSystemHandler.cs @@ -1,4 +1,4 @@ -// +// // MonoDevelopWorkspace.ProjectSystemHandler.cs // // Author: @@ -61,7 +61,7 @@ namespace MonoDevelop.Ide.TypeSystem this.projections = projections; metadataHandler = new Lazy<MetadataReferenceHandler> (() => new MetadataReferenceHandler (workspace.MetadataReferenceManager, projectMap)); - hostDiagnosticUpdateSource = new Lazy<HostDiagnosticUpdateSource> (() => new HostDiagnosticUpdateSource (workspace, Composition.CompositionManager.GetExportedValue<IDiagnosticUpdateSourceRegistrationService> ())); + hostDiagnosticUpdateSource = new Lazy<HostDiagnosticUpdateSource> (() => new HostDiagnosticUpdateSource (workspace, workspace.compositionManager.GetExportedValue<IDiagnosticUpdateSourceRegistrationService> ())); } #region Solution mapping @@ -84,7 +84,7 @@ namespace MonoDevelop.Ide.TypeSystem static async void OnSolutionModified (object sender, MonoDevelop.Projects.WorkspaceItemEventArgs args) { var sol = (MonoDevelop.Projects.Solution)args.Item; - var workspace = await TypeSystemService.GetWorkspaceAsync (sol, CancellationToken.None); + var workspace = await IdeApp.TypeSystemService.GetWorkspaceAsync (sol, CancellationToken.None); var solId = workspace.ProjectHandler.GetSolutionId (sol); if (solId == null) return; @@ -111,9 +111,9 @@ namespace MonoDevelop.Ide.TypeSystem { var projectId = projectMap.GetOrCreateId (p, oldProject); - var config = IdeApp.Workspace != null ? p.GetConfiguration (IdeApp.Workspace.ActiveConfiguration) as MonoDevelop.Projects.DotNetProjectConfiguration : null; + var config = IdeApp.IsInitialized ? p.GetConfiguration (IdeApp.Workspace.ActiveConfiguration) as MonoDevelop.Projects.DotNetProjectConfiguration : null; MonoDevelop.Projects.DotNetCompilerParameters cp = config?.CompilationParameters; - FilePath fileName = IdeApp.Workspace != null ? p.GetOutputFileName (IdeApp.Workspace.ActiveConfiguration) : (FilePath)""; + FilePath fileName = IdeApp.IsInitialized ? p.GetOutputFileName (IdeApp.Workspace.ActiveConfiguration) : (FilePath)""; if (fileName.IsNullOrEmpty) fileName = new FilePath (p.Name + ".dll"); @@ -291,8 +291,8 @@ namespace MonoDevelop.Ide.TypeSystem static bool CanGenerateAnalysisContextForNonCompileable (MonoDevelop.Projects.Project p, MonoDevelop.Projects.ProjectFile f) { - var mimeType = DesktopService.GetMimeTypeForUri (f.FilePath); - var node = TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction); + var mimeType = IdeServices.DesktopService.GetMimeTypeForUri (f.FilePath); + var node = IdeApp.TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction); if (node?.Parser == null) return false; return node.Parser.CanGenerateAnalysisDocument (mimeType, f.BuildAction, p.SupportedLanguages); @@ -339,8 +339,8 @@ namespace MonoDevelop.Ide.TypeSystem IEnumerable<DocumentInfo> GenerateProjections (MonoDevelop.Projects.ProjectFile f, DocumentMap documentMap, MonoDevelop.Projects.Project p, ProjectData oldProjectData, HashSet<DocumentId> duplicates) { - var mimeType = DesktopService.GetMimeTypeForUri (f.FilePath); - var node = TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction); + var mimeType = IdeServices.DesktopService.GetMimeTypeForUri (f.FilePath); + var node = IdeApp.TypeSystemService.GetTypeSystemParserNode (mimeType, f.BuildAction); if (node == null || !node.Parser.CanGenerateProjection (mimeType, f.BuildAction, p.SupportedLanguages)) yield break; var options = new ParseOptions { |