File tree Expand file tree Collapse file tree 4 files changed +22
-5
lines changed Expand file tree Collapse file tree 4 files changed +22
-5
lines changed Original file line number Diff line number Diff line change @@ -94,7 +94,9 @@ function activate(
94
94
settingRendererRegistry : IFormRendererRegistry | null
95
95
) : ILSPDocumentConnectionManager {
96
96
const LANGUAGE_SERVERS = 'languageServers' ;
97
- const languageServerManager = new LanguageServerManager ( { } ) ;
97
+ const languageServerManager = new LanguageServerManager ( {
98
+ settings : app . serviceManager . serverSettings
99
+ } ) ;
98
100
const connectionManager = new DocumentConnectionManager ( {
99
101
languageServerManager
100
102
} ) ;
Original file line number Diff line number Diff line change 2
2
// Distributed under the terms of the Modified BSD License.
3
3
4
4
import { PageConfig , URLExt } from '@jupyterlab/coreutils' ;
5
- import { ServerConnection } from '@jupyterlab/services' ;
6
5
import { IDocumentWidget } from '@jupyterlab/docregistry' ;
7
6
import { ISignal , Signal } from '@lumino/signaling' ;
8
7
@@ -548,7 +547,7 @@ export namespace DocumentConnectionManager {
548
547
virtualDocument : VirtualDocument ,
549
548
language : string
550
549
) : IURIs | undefined {
551
- const settings = ServerConnection . makeSettings ( ) ;
550
+ const { settings } = Private . getLanguageServerManager ( ) ;
552
551
const wsBase = settings . wsUrl ;
553
552
const rootUri = PageConfig . getOption ( 'rootUri' ) ;
554
553
const virtualDocumentsUri = PageConfig . getOption ( 'virtualDocumentsUri' ) ;
@@ -655,7 +654,8 @@ namespace Private {
655
654
) : Promise < LSPConnection > {
656
655
let connection = _connections . get ( languageServerId ) ;
657
656
if ( ! connection ) {
658
- const socket = new WebSocket ( uris . socket ) ;
657
+ const { settings } = Private . getLanguageServerManager ( ) ;
658
+ const socket = new settings . WebSocket ( uris . socket ) ;
659
659
const connection = new LSPConnection ( {
660
660
languageId : language ,
661
661
serverUri : uris . server ,
Original file line number Diff line number Diff line change @@ -33,13 +33,21 @@ export class LanguageServerManager implements ILanguageServerManager {
33
33
get isEnabled ( ) : boolean {
34
34
return this . _enabled ;
35
35
}
36
+
36
37
/**
37
38
* Check if the manager is disposed.
38
39
*/
39
40
get isDisposed ( ) : boolean {
40
41
return this . _isDisposed ;
41
42
}
42
43
44
+ /**
45
+ * Get server connection settings.
46
+ */
47
+ get settings ( ) {
48
+ return this . _settings ;
49
+ }
50
+
43
51
/**
44
52
* Get the language server specs.
45
53
*/
@@ -204,7 +212,7 @@ export class LanguageServerManager implements ILanguageServerManager {
204
212
for ( let key of Object . keys ( sessions ) ) {
205
213
let id : TLanguageServerId = key as TLanguageServerId ;
206
214
if ( this . _sessions . has ( id ) ) {
207
- Object . assign ( this . _sessions . get ( id ) ! , sessions [ key ] ) ;
215
+ Object . assign ( this . _sessions . get ( id ) || { } , sessions [ key ] ) ;
208
216
} else {
209
217
this . _sessions . set ( id , sessions [ key ] ) ;
210
218
}
Original file line number Diff line number Diff line change @@ -91,6 +91,13 @@ export interface ILanguageServerManager extends IDisposable {
91
91
*/
92
92
readonly sessions : TSessionMap ;
93
93
94
+ /**
95
+ * @alpha
96
+ *
97
+ * Get server connection settings.
98
+ */
99
+ readonly settings : ServerConnection . ISettings ;
100
+
94
101
/**
95
102
* @alpha
96
103
*
You can’t perform that action at this time.
0 commit comments