/
githubmirror
/
roslyn
Обзор
Документация
Войти
/
githubmirror
/
roslyn
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/LanguageServer/Protocol/Workspaces/LspWorkspaceManagerFactory.cs
27 строк
1 KB
David Barbet
Refactor LSP server logging to remove singleton lsp instance (#84001)
16 июн 2026, 05:04
Не верифицирован
16 июн 2026, 05:04
82e81e5
Код
Авторство
О чём код?
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. // See the LICENSE file in the project root for more information. using System; using System.Composition; using Microsoft.CodeAnalysis.Host.Mef; using Microsoft.CodeAnalysis.LanguageServer.Handler; using Microsoft.CommonLanguageServerProtocol.Framework; namespace Microsoft.CodeAnalysis.LanguageServer; [ExportCSharpVisualBasicLspServiceFactory(typeof(LspWorkspaceManager)), Shared] [method: ImportingConstructor] [method: Obsolete(MefConstruction.ImportingConstructorMessage, error: true)] internal class LspWorkspaceManagerFactory() : ILspServiceFactory { public ILspService CreateILspService(LspServices lspServices, WellKnownLspServerKinds serverKind) { var logger = lspServices.GetRequiredService<ILspLogger>(); var miscFilesWorkspace = lspServices.GetService<ILspMiscellaneousFilesWorkspaceProvider>(); var lspWorkspaceRegistrationService = lspServices.GetRequiredService<LspWorkspaceRegistrationService>(); var languageInfoProvider = lspServices.GetRequiredService<ILanguageInfoProvider>(); var telemetryLogger = lspServices.GetRequiredService<RequestTelemetryLogger>(); return new LspWorkspaceManager(logger, miscFilesWorkspace, lspWorkspaceRegistrationService, languageInfoProvider, telemetryLogger); } }