MCPcopy
hub / github.com/dotnet/vscode-csharp / activate

Function activate

src/omnisharp/omnisharpLanguageServer.ts:187–352  ·  view source on GitHub ↗
(
    context: vscode.ExtensionContext,
    packageJSON: any,
    platformInfo: PlatformInformation,
    provider: NetworkSettingsProvider,
    eventStream: EventStream,
    extensionPath: string,
    outputChannel: vscode.OutputChannel,
    reporter: ITelemetryReporter
)

Source from the content-addressed store, hash-verified

185}
186
187async function activate(
188 context: vscode.ExtensionContext,
189 packageJSON: any,
190 platformInfo: PlatformInformation,
191 provider: NetworkSettingsProvider,
192 eventStream: EventStream,
193 extensionPath: string,
194 outputChannel: vscode.OutputChannel,
195 reporter: ITelemetryReporter
196) {
197 const disposables = new CompositeDisposable();
198
199 const omnisharpMonoResolver = new OmniSharpMonoResolver(getMonoVersion);
200 const omnisharpDotnetResolver = new DotnetResolver(platformInfo);
201
202 const languageMiddlewareFeature = new LanguageMiddlewareFeature();
203 languageMiddlewareFeature.register();
204 disposables.add(languageMiddlewareFeature);
205
206 const server = new OmniSharpServer(
207 vscode,
208 provider,
209 packageJSON,
210 platformInfo,
211 eventStream,
212 extensionPath,
213 omnisharpMonoResolver,
214 omnisharpDotnetResolver,
215 context,
216 outputChannel,
217 languageMiddlewareFeature,
218 reporter
219 );
220 const advisor = new Advisor(server); // create before server is started
221 const testManager = new TestManager(server, eventStream, languageMiddlewareFeature);
222 const workspaceInformationProvider = new OmnisharpWorkspaceDebugInformationProvider(server);
223
224 let registrations: Disposable | undefined;
225 disposables.add(
226 server.onServerStart(async () => {
227 registrations = await server.registerProviders(eventStream, advisor, testManager);
228 })
229 );
230
231 disposables.add(
232 server.onServerStop(() => {
233 // remove language feature providers on stop
234 registrations?.dispose();
235 registrations = undefined;
236 })
237 );
238
239 disposables.add(
240 registerCommands(
241 context,
242 server,
243 platformInfo,
244 eventStream,

Callers 1

Calls 15

registerMethod · 0.95
addMethod · 0.95
onServerStartMethod · 0.95
registerProvidersMethod · 0.95
onServerStopMethod · 0.95
onBeforeServerStartMethod · 0.95
autoStartMethod · 0.95
disposeMethod · 0.95
stopMethod · 0.95
addAssetsIfNecessaryFunction · 0.90
showWarningMessageFunction · 0.90
sumFunction · 0.90

Tested by

no test coverage detected