1+ import { Emitter } from "vs/base/common/event" ;
12import { URI } from "vs/base/common/uri" ;
23import { registerSingleton } from "vs/platform/instantiation/common/extensions" ;
34import { ServiceCollection } from "vs/platform/instantiation/common/serviceCollection" ;
4- import { ITelemetryService } from "vs/platform/telemetry/common/telemetry" ;
55import { ILocalizationsService } from "vs/platform/localizations/common/localizations" ;
66import { LocalizationsService } from "vs/platform/localizations/electron-browser/localizationsService" ;
7+ import { ITelemetryService } from "vs/platform/telemetry/common/telemetry" ;
78import { IUpdateService } from "vs/platform/update/common/update" ;
89import { UpdateService } from "vs/platform/update/electron-browser/updateService" ;
9- import { TelemetryChannelClient } from "vs/server/src/telemetry" ;
10- import { IUploadService , UploadService } from 'vs/server/src/upload' ;
10+ import { coderApi , vscodeApi } from "vs/server/src/browser/api" ;
11+ import { IUploadService , UploadService } from "vs/server/src/browser/upload" ;
12+ import { INodeProxyService , NodeProxyChannelClient } from "vs/server/src/common/nodeProxy" ;
13+ import { TelemetryChannelClient } from "vs/server/src/common/telemetry" ;
14+ import "vs/workbench/contrib/localizations/browser/localizations.contribution" ;
15+ import "vs/workbench/contrib/update/electron-browser/update.contribution" ;
1116import { IRemoteAgentService } from "vs/workbench/services/remote/common/remoteAgentService" ;
1217
1318class TelemetryService extends TelemetryChannelClient {
@@ -18,16 +23,28 @@ class TelemetryService extends TelemetryChannelClient {
1823 }
1924}
2025
26+ class NodeProxyService extends NodeProxyChannelClient implements INodeProxyService {
27+ private readonly _onClose = new Emitter < void > ( ) ;
28+ public readonly onClose = this . _onClose . event ;
29+ private readonly _onDown = new Emitter < void > ( ) ;
30+ public readonly onDown = this . _onDown . event ;
31+ private readonly _onUp = new Emitter < void > ( ) ;
32+ public readonly onUp = this . _onUp . event ;
33+
34+ public constructor (
35+ @IRemoteAgentService remoteAgentService : IRemoteAgentService ,
36+ ) {
37+ // TODO: up/down/close
38+ super ( remoteAgentService . getConnection ( ) ! . getChannel ( "nodeProxy" ) ) ;
39+ }
40+ }
41+
2142registerSingleton ( ILocalizationsService , LocalizationsService ) ;
43+ registerSingleton ( INodeProxyService , NodeProxyService ) ;
2244registerSingleton ( ITelemetryService , TelemetryService ) ;
2345registerSingleton ( IUpdateService , UpdateService ) ;
2446registerSingleton ( IUploadService , UploadService , true ) ;
2547
26- import "vs/workbench/contrib/update/electron-browser/update.contribution" ;
27- import 'vs/workbench/contrib/localizations/browser/localizations.contribution' ;
28-
29- import { coderApi , vscodeApi } from "vs/server/src/api" ;
30-
3148/**
3249 * This is called by vs/workbench/browser/web.main.ts after the workbench has
3350 * been initialized so we can initialize our own client-side code.
0 commit comments