From 2d4fcf14d66ca70b2bbd99cd5d95d0ddf41f994f Mon Sep 17 00:00:00 2001 From: Benjamin Pasero Date: Fri, 8 Mar 2019 10:52:10 +0100 Subject: [PATCH] debt - declarative IExtensionManagementService --- src/vs/workbench/electron-browser/workbench.ts | 4 +--- .../extensionManagement/node/multiExtensionManagement.ts | 5 ++++- src/vs/workbench/workbench.main.ts | 1 + 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/vs/workbench/electron-browser/workbench.ts b/src/vs/workbench/electron-browser/workbench.ts index 40e3338459d..9cb5049ffd1 100644 --- a/src/vs/workbench/electron-browser/workbench.ts +++ b/src/vs/workbench/electron-browser/workbench.ts @@ -62,7 +62,7 @@ import { ILabelService } from 'vs/platform/label/common/label'; import { LabelService } from 'vs/workbench/services/label/common/labelService'; import { ITelemetryServiceConfig, TelemetryService } from 'vs/platform/telemetry/common/telemetryService'; import { combinedAppender, LogAppender, NullTelemetryService } from 'vs/platform/telemetry/common/telemetryUtils'; -import { IExtensionGalleryService, IExtensionManagementServerService, IExtensionManagementService } from 'vs/platform/extensionManagement/common/extensionManagement'; +import { IExtensionGalleryService, IExtensionManagementServerService } from 'vs/platform/extensionManagement/common/extensionManagement'; import { IRemoteAuthorityResolverService } from 'vs/platform/remote/common/remoteAuthorityResolver'; import { ILocalizationsService } from 'vs/platform/localizations/common/localizations'; import { IProductService } from 'vs/platform/product/common/product'; @@ -83,7 +83,6 @@ import { DownloadServiceChannel } from 'vs/platform/download/node/downloadIpc'; import { LogLevelSetterChannel } from 'vs/platform/log/node/logIpc'; import { ExtensionManagementChannelClient } from 'vs/platform/extensionManagement/node/extensionManagementIpc'; import { ExtensionManagementServerService } from 'vs/workbench/services/extensions/node/extensionManagementServerService'; -import { MultiExtensionManagementService } from 'vs/workbench/services/extensionManagement/node/multiExtensionManagement'; import { LocalizationsChannelClient } from 'vs/platform/localizations/node/localizationsIpc'; import { ProductService } from 'vs/platform/product/node/productService'; @@ -356,7 +355,6 @@ export class Workbench extends Disposable implements IWorkbenchLayoutService { const extensionManagementChannel = getDelayedChannel(sharedProcess.then(c => c.getChannel('extensions'))); const extensionManagementChannelClient = new ExtensionManagementChannelClient(extensionManagementChannel); serviceCollection.set(IExtensionManagementServerService, new SyncDescriptor(ExtensionManagementServerService, [extensionManagementChannelClient])); - serviceCollection.set(IExtensionManagementService, new SyncDescriptor(MultiExtensionManagementService)); // Localization const localizationsChannel = getDelayedChannel(sharedProcess.then(c => c.getChannel('localizations'))); diff --git a/src/vs/workbench/services/extensionManagement/node/multiExtensionManagement.ts b/src/vs/workbench/services/extensionManagement/node/multiExtensionManagement.ts index c13e8ba5594..c7726330b76 100644 --- a/src/vs/workbench/services/extensionManagement/node/multiExtensionManagement.ts +++ b/src/vs/workbench/services/extensionManagement/node/multiExtensionManagement.ts @@ -20,6 +20,7 @@ import { ILogService } from 'vs/platform/log/common/log'; import { areSameExtensions } from 'vs/platform/extensionManagement/common/extensionManagementUtil'; import { localize } from 'vs/nls'; import { isUIExtension } from 'vs/platform/extensions/node/extensionsUtil'; +import { registerSingleton } from 'vs/platform/instantiation/common/extensions'; export class MultiExtensionManagementService extends Disposable implements IExtensionManagementService { @@ -218,4 +219,6 @@ export class MultiExtensionManagementService extends Disposable implements IExte return remoteEnv.syncExtensions; } -} \ No newline at end of file +} + +registerSingleton(IExtensionManagementService, MultiExtensionManagementService); \ No newline at end of file diff --git a/src/vs/workbench/workbench.main.ts b/src/vs/workbench/workbench.main.ts index f0b567c35ec..27e1b6da9d1 100644 --- a/src/vs/workbench/workbench.main.ts +++ b/src/vs/workbench/workbench.main.ts @@ -99,6 +99,7 @@ import 'vs/workbench/services/themes/browser/workbenchThemeService'; import 'vs/workbench/services/extensions/electron-browser/extensionService'; import 'vs/workbench/services/contextmenu/electron-browser/contextmenuService'; import 'vs/platform/contextview/browser/contextViewService'; +import 'vs/workbench/services/extensionManagement/node/multiExtensionManagement'; registerSingleton(IMenuService, MenuService, true); registerSingleton(IListService, ListService, true); -- GitLab