Path: blob/main/src/vs/workbench/contrib/logs/browser/logs.contribution.ts
3296 views
/*---------------------------------------------------------------------------------------------1* Copyright (c) Microsoft Corporation. All rights reserved.2* Licensed under the MIT License. See License.txt in the project root for license information.3*--------------------------------------------------------------------------------------------*/45import { Registry } from '../../../../platform/registry/common/platform.js';6import { Categories } from '../../../../platform/action/common/actionCommonCategories.js';7import { Action2, registerAction2 } from '../../../../platform/actions/common/actions.js';8import { OpenWindowSessionLogFileAction } from '../common/logsActions.js';9import { IWorkbenchContribution, IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from '../../../common/contributions.js';10import { Disposable } from '../../../../base/common/lifecycle.js';11import { LifecyclePhase } from '../../../services/lifecycle/common/lifecycle.js';12import { IInstantiationService, ServicesAccessor } from '../../../../platform/instantiation/common/instantiation.js';13import { LogsDataCleaner } from '../common/logsDataCleaner.js';1415class WebLogOutputChannels extends Disposable implements IWorkbenchContribution {1617constructor(18@IInstantiationService private readonly instantiationService: IInstantiationService,19) {20super();21this.registerWebContributions();22}2324private registerWebContributions(): void {25this.instantiationService.createInstance(LogsDataCleaner);2627this._register(registerAction2(class extends Action2 {28constructor() {29super({30id: OpenWindowSessionLogFileAction.ID,31title: OpenWindowSessionLogFileAction.TITLE,32category: Categories.Developer,33f1: true34});35}36run(servicesAccessor: ServicesAccessor): Promise<void> {37return servicesAccessor.get(IInstantiationService).createInstance(OpenWindowSessionLogFileAction, OpenWindowSessionLogFileAction.ID, OpenWindowSessionLogFileAction.TITLE.value).run();38}39}));4041}4243}4445Registry.as<IWorkbenchContributionsRegistry>(WorkbenchExtensions.Workbench).registerWorkbenchContribution(WebLogOutputChannels, LifecyclePhase.Restored);464748