55
66import { timeout } from 'vs/base/common/async' ;
77import * as errors from 'vs/base/common/errors' ;
8- import { IDisposable , dispose } from 'vs/base/common/lifecycle' ;
9- import { Counter } from 'vs/base/common/numbers' ;
8+ import { DisposableStore } from 'vs/base/common/lifecycle' ;
109import { URI , setUriThrowOnMissingScheme } from 'vs/base/common/uri' ;
1110import { IURITransformer } from 'vs/base/common/uriIpc' ;
1211import { IMessagePassingProtocol } from 'vs/base/parts/ipc/common/ipc' ;
@@ -41,10 +40,7 @@ export class ExtensionHostMain {
4140 private _isTerminating : boolean ;
4241 private readonly _hostUtils : IHostUtils ;
4342 private readonly _extensionService : ExtHostExtensionService ;
44- private readonly _extHostLogService : ExtHostLogService ;
45- private disposables : IDisposable [ ] = [ ] ;
46-
47- private _searchRequestIdProvider : Counter ;
43+ private readonly disposables = new DisposableStore ( ) ;
4844
4945 constructor (
5046 protocol : IMessagePassingProtocol ,
@@ -65,14 +61,13 @@ export class ExtensionHostMain {
6561 consolePatchFn ( rpcProtocol . getProxy ( MainContext . MainThreadConsole ) ) ;
6662
6763 // services
68- this . _extHostLogService = new ExtHostLogService ( logServiceFn ( initData ) , initData . logsLocation . fsPath ) ;
69- this . disposables . push ( this . _extHostLogService ) ;
64+ const extHostLogService = new ExtHostLogService ( logServiceFn ( initData ) , initData . logsLocation . fsPath ) ;
65+ this . disposables . add ( extHostLogService ) ;
7066
71- this . _searchRequestIdProvider = new Counter ( ) ;
72- const extHostWorkspace = new ExtHostWorkspace ( rpcProtocol , this . _extHostLogService , this . _searchRequestIdProvider , withNullAsUndefined ( initData . workspace ) ) ;
67+ const extHostWorkspace = new ExtHostWorkspace ( rpcProtocol , extHostLogService , withNullAsUndefined ( initData . workspace ) ) ;
7368
74- this . _extHostLogService . info ( 'extension host started' ) ;
75- this . _extHostLogService . trace ( 'initData' , initData ) ;
69+ extHostLogService . info ( 'extension host started' ) ;
70+ extHostLogService . trace ( 'initData' , initData ) ;
7671
7772 const extHostConfiguraiton = new ExtHostConfiguration ( rpcProtocol . getProxy ( MainContext . MainThreadConfiguration ) , extHostWorkspace ) ;
7873 this . _extensionService = new ExtHostExtensionService (
@@ -82,7 +77,7 @@ export class ExtensionHostMain {
8277 extHostWorkspace ,
8378 extHostConfiguraiton ,
8479 initData . environment ,
85- this . _extHostLogService ,
80+ extHostLogService ,
8681 uriTransformer
8782 ) ;
8883
@@ -127,7 +122,7 @@ export class ExtensionHostMain {
127122 }
128123 this . _isTerminating = true ;
129124
130- this . disposables = dispose ( this . disposables ) ;
125+ this . disposables . dispose ( ) ;
131126
132127 errors . setUnexpectedErrorHandler ( ( err ) => {
133128 // TODO: write to log once we have one
0 commit comments