From ee5e407dcff25d8511398a1ec6da772e25927bc1 Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Thu, 26 Sep 2019 10:12:20 +0200 Subject: [PATCH] debt - have config exporter as workbench contrib --- .../configurationExportHelper.contribution.ts | 26 +++++++++++++++++++ .../node/configurationExportHelper.ts | 0 .../electron-browser/desktop.main.ts | 6 ----- src/vs/workbench/workbench.desktop.main.ts | 3 +++ 4 files changed, 29 insertions(+), 6 deletions(-) create mode 100644 src/vs/workbench/contrib/configExporter/node/configurationExportHelper.contribution.ts rename src/vs/workbench/{services/configuration => contrib/configExporter}/node/configurationExportHelper.ts (100%) diff --git a/src/vs/workbench/contrib/configExporter/node/configurationExportHelper.contribution.ts b/src/vs/workbench/contrib/configExporter/node/configurationExportHelper.contribution.ts new file mode 100644 index 00000000000..503f8a83d5a --- /dev/null +++ b/src/vs/workbench/contrib/configExporter/node/configurationExportHelper.contribution.ts @@ -0,0 +1,26 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { IWorkbenchContribution, IWorkbenchContributionsRegistry, Extensions as WorkbenchExtensions } from 'vs/workbench/common/contributions'; +import { Registry } from 'vs/platform/registry/common/platform'; +import { IInstantiationService } from 'vs/platform/instantiation/common/instantiation'; +import { LifecyclePhase } from 'vs/platform/lifecycle/common/lifecycle'; +import { IWorkbenchEnvironmentService } from 'vs/workbench/services/environment/common/environmentService'; +import { DefaultConfigurationExportHelper } from 'vs/workbench/contrib/configExporter/node/configurationExportHelper'; + +export class ExtensionPoints implements IWorkbenchContribution { + + constructor( + @IInstantiationService instantiationService: IInstantiationService, + @IWorkbenchEnvironmentService environmentService: IWorkbenchEnvironmentService + ) { + // Config Exporter + if (environmentService.configuration['export-default-configuration']) { + instantiationService.createInstance(DefaultConfigurationExportHelper); + } + } +} + +Registry.as(WorkbenchExtensions.Workbench).registerWorkbenchContribution(ExtensionPoints, LifecyclePhase.Restored); diff --git a/src/vs/workbench/services/configuration/node/configurationExportHelper.ts b/src/vs/workbench/contrib/configExporter/node/configurationExportHelper.ts similarity index 100% rename from src/vs/workbench/services/configuration/node/configurationExportHelper.ts rename to src/vs/workbench/contrib/configExporter/node/configurationExportHelper.ts diff --git a/src/vs/workbench/electron-browser/desktop.main.ts b/src/vs/workbench/electron-browser/desktop.main.ts index f3ac637e78a..3e1d93baed2 100644 --- a/src/vs/workbench/electron-browser/desktop.main.ts +++ b/src/vs/workbench/electron-browser/desktop.main.ts @@ -44,7 +44,6 @@ import { IFileService } from 'vs/platform/files/common/files'; import { DiskFileSystemProvider } from 'vs/platform/files/electron-browser/diskFileSystemProvider'; import { IChannel } from 'vs/base/parts/ipc/common/ipc'; import { REMOTE_FILE_SYSTEM_CHANNEL_NAME, RemoteExtensionsFileSystemProvider } from 'vs/platform/remote/common/remoteAgentFileSystemChannel'; -import { DefaultConfigurationExportHelper } from 'vs/workbench/services/configuration/node/configurationExportHelper'; import { ConfigurationCache } from 'vs/workbench/services/configuration/node/configurationCache'; import { SpdLogService } from 'vs/platform/log/node/spdlogService'; import { SignService } from 'vs/platform/sign/node/signService'; @@ -135,11 +134,6 @@ class DesktopMain extends Disposable { instantiationService.invokeFunction(async accessor => this._register(await registerWindowDriver(accessor))); } - // Config Exporter - if (this.environmentService.configuration['export-default-configuration']) { - instantiationService.createInstance(DefaultConfigurationExportHelper); - } - // Logging services.logService.trace('workbench configuration', JSON.stringify(this.environmentService.configuration)); } diff --git a/src/vs/workbench/workbench.desktop.main.ts b/src/vs/workbench/workbench.desktop.main.ts index a1e46ccee59..bf5da3657b3 100644 --- a/src/vs/workbench/workbench.desktop.main.ts +++ b/src/vs/workbench/workbench.desktop.main.ts @@ -154,4 +154,7 @@ import 'vs/workbench/contrib/userDataSync/electron-browser/userDataSync.contribu // Welcome import 'vs/workbench/contrib/welcome/gettingStarted/electron-browser/openWebsite.contribution'; +// Configuration Exporter +import 'vs/workbench/contrib/configExporter/node/configurationExportHelper.contribution'; + //#endregion