From 6cd919a545a5ef9992e6fc7557e9abdfe9dbae29 Mon Sep 17 00:00:00 2001 From: Sandeep Somavarapu Date: Thu, 21 Mar 2019 12:20:31 +0100 Subject: [PATCH] move remote services to start up --- src/vs/workbench/electron-browser/main.ts | 10 ++++++++++ .../remote/electron-browser/remoteAgentServiceImpl.ts | 9 +++------ src/vs/workbench/workbench.main.ts | 3 --- src/vs/workbench/workbench.nodeless.main.ts | 1 - 4 files changed, 13 insertions(+), 10 deletions(-) diff --git a/src/vs/workbench/electron-browser/main.ts b/src/vs/workbench/electron-browser/main.ts index 9ed835ab545..20714206670 100644 --- a/src/vs/workbench/electron-browser/main.ts +++ b/src/vs/workbench/electron-browser/main.ts @@ -39,6 +39,10 @@ import { IStorageService } from 'vs/platform/storage/common/storage'; import { Disposable } from 'vs/base/common/lifecycle'; import { registerWindowDriver } from 'vs/platform/driver/electron-browser/driver'; import { IMainProcessService, MainProcessService } from 'vs/platform/ipc/electron-browser/mainProcessService'; +import { RemoteAuthorityResolverService } from 'vs/platform/remote/electron-browser/remoteAuthorityResolverService'; +import { IRemoteAuthorityResolverService } from 'vs/platform/remote/common/remoteAuthorityResolver'; +import { RemoteAgentService } from 'vs/workbench/services/remote/electron-browser/remoteAgentServiceImpl'; +import { IRemoteAgentService } from 'vs/workbench/services/remote/common/remoteAgentService'; class CodeRendererMain extends Disposable { @@ -168,6 +172,12 @@ class CodeRendererMain extends Disposable { const logService = this._register(this.createLogService(mainProcessService, environmentService)); serviceCollection.set(ILogService, logService); + // Remote + const remoteAuthorityResolverService = new RemoteAuthorityResolverService(); + serviceCollection.set(IRemoteAuthorityResolverService, remoteAuthorityResolverService); + const remoteAgentService = new RemoteAgentService(this.configuration, environmentService, remoteAuthorityResolverService); + serviceCollection.set(IRemoteAgentService, remoteAgentService); + return this.resolveWorkspaceInitializationPayload(environmentService).then(payload => Promise.all([ this.createWorkspaceService(payload, environmentService, logService).then(service => { diff --git a/src/vs/workbench/services/remote/electron-browser/remoteAgentServiceImpl.ts b/src/vs/workbench/services/remote/electron-browser/remoteAgentServiceImpl.ts index 9c6b3a4991e..44584f4fa39 100644 --- a/src/vs/workbench/services/remote/electron-browser/remoteAgentServiceImpl.ts +++ b/src/vs/workbench/services/remote/electron-browser/remoteAgentServiceImpl.ts @@ -8,10 +8,9 @@ import { getDelayedChannel } from 'vs/base/parts/ipc/node/ipc'; import { Client } from 'vs/base/parts/ipc/node/ipc.net'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; import { connectRemoteAgentManagement } from 'vs/platform/remote/node/remoteAgentConnection'; -import { IWindowService } from 'vs/platform/windows/common/windows'; +import { IWindowConfiguration } from 'vs/platform/windows/common/windows'; import { IRemoteAgentConnection, IRemoteAgentService } from 'vs/workbench/services/remote/common/remoteAgentService'; import { IRemoteAuthorityResolverService } from 'vs/platform/remote/common/remoteAuthorityResolver'; -import { registerSingleton } from 'vs/platform/instantiation/common/extensions'; import { LifecyclePhase } from 'vs/platform/lifecycle/common/lifecycle'; import { DialogChannel } from 'vs/platform/dialogs/node/dialogIpc'; import { DownloadServiceChannel } from 'vs/platform/download/node/downloadIpc'; @@ -34,12 +33,11 @@ export class RemoteAgentService extends Disposable implements IRemoteAgentServic private _environment: Promise | null; constructor( - @IWindowService windowService: IWindowService, + { remoteAuthority }: IWindowConfiguration, @IEnvironmentService private readonly _environmentService: IEnvironmentService, @IRemoteAuthorityResolverService remoteAuthorityResolverService: IRemoteAuthorityResolverService ) { super(); - const { remoteAuthority } = windowService.getConfiguration(); if (remoteAuthority) { this._connection = this._register(new RemoteAgentConnection(remoteAuthority, _environmentService, remoteAuthorityResolverService)); } @@ -132,5 +130,4 @@ class RemoteConnectionFailureNotificationContribution implements IWorkbenchContr const workbenchRegistry = Registry.as(Extensions.Workbench); workbenchRegistry.registerWorkbenchContribution(RemoteChannelsContribution, LifecyclePhase.Ready); -workbenchRegistry.registerWorkbenchContribution(RemoteConnectionFailureNotificationContribution, LifecyclePhase.Ready); -registerSingleton(IRemoteAgentService, RemoteAgentService); \ No newline at end of file +workbenchRegistry.registerWorkbenchContribution(RemoteConnectionFailureNotificationContribution, LifecyclePhase.Ready); \ No newline at end of file diff --git a/src/vs/workbench/workbench.main.ts b/src/vs/workbench/workbench.main.ts index 8989bf2a9d8..b4dc43163ec 100644 --- a/src/vs/workbench/workbench.main.ts +++ b/src/vs/workbench/workbench.main.ts @@ -74,8 +74,6 @@ import { ILifecycleService } from 'vs/platform/lifecycle/common/lifecycle'; import { ILocalizationsService } from 'vs/platform/localizations/common/localizations'; import { LocalizationsService } from 'vs/platform/localizations/electron-browser/localizationsService'; import { ISharedProcessService, SharedProcessService } from 'vs/platform/ipc/electron-browser/sharedProcessService'; -import { RemoteAuthorityResolverService } from 'vs/platform/remote/electron-browser/remoteAuthorityResolverService'; -import { IRemoteAuthorityResolverService } from 'vs/platform/remote/common/remoteAuthorityResolver'; import { ITelemetryService } from 'vs/platform/telemetry/common/telemetry'; import { TelemetryService } from 'vs/platform/telemetry/electron-browser/telemetryService'; import { IProductService } from 'vs/platform/product/common/product'; @@ -154,7 +152,6 @@ registerSingleton(IRequestService, RequestService, true); registerSingleton(ILifecycleService, LifecycleService); registerSingleton(ILocalizationsService, LocalizationsService); registerSingleton(ISharedProcessService, SharedProcessService, true); -registerSingleton(IRemoteAuthorityResolverService, RemoteAuthorityResolverService, true); registerSingleton(ITelemetryService, TelemetryService); registerSingleton(IProductService, ProductService, true); registerSingleton(IWindowsService, WindowsService); diff --git a/src/vs/workbench/workbench.nodeless.main.ts b/src/vs/workbench/workbench.nodeless.main.ts index 992122f9a10..021dae06bfb 100644 --- a/src/vs/workbench/workbench.nodeless.main.ts +++ b/src/vs/workbench/workbench.nodeless.main.ts @@ -159,7 +159,6 @@ registerSingleton(IContextViewService, ContextViewService, true); // registerSingleton(ILifecycleService, LifecycleService); // registerSingleton(ILocalizationsService, LocalizationsService); // registerSingleton(ISharedProcessService, SharedProcessService, true); -// registerSingleton(IRemoteAuthorityResolverService, RemoteAuthorityResolverService, true); // registerSingleton(ITelemetryService, TelemetryService); // registerSingleton(IProductService, ProductService, true); // registerSingleton(IWindowsService, WindowsService); -- GitLab