From 697661a4be3f1fe86490fe8074f59a95b4fad05f Mon Sep 17 00:00:00 2001 From: Vladimir Matveev Date: Tue, 7 Jun 2016 17:45:22 -0700 Subject: [PATCH] added openExternalProjects method --- src/server/protocol.d.ts | 8 ++++++++ src/server/session.ts | 9 ++++++++- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/src/server/protocol.d.ts b/src/server/protocol.d.ts index e04c033398b..0ca5163ac17 100644 --- a/src/server/protocol.d.ts +++ b/src/server/protocol.d.ts @@ -586,6 +586,14 @@ declare namespace ts.server.protocol { projectFileName: string; } + export interface OpenExternalProjectsRequest extends Request { + arguments: OpenExternalProjectsArgs; + } + + export interface OpenExternalProjectsArgs { + projects: ExternalProject[]; + } + export interface CloseExternalProjectRequest extends Request { arguments: CloseExternalProjectRequestArgs; } diff --git a/src/server/session.ts b/src/server/session.ts index a424d94f2db..5823deac08b 100644 --- a/src/server/session.ts +++ b/src/server/session.ts @@ -128,6 +128,7 @@ namespace ts.server { export const ReloadProjects = "reloadProjects"; export const Unknown = "unknown"; export const OpenExternalProject = "openExternalProject"; + export const OpenExternalProjects = "openExternalProjects"; export const CloseExternalProject = "closeExternalProject"; export const SynchronizeProjectList = "synchronizeProjectList"; export const ApplyChangedToOpenFiles = "applyChangedToOpenFiles"; @@ -1041,7 +1042,13 @@ namespace ts.server { private handlers: Map<(request: protocol.Request) => { response?: any, responseRequired?: boolean }> = { [CommandNames.OpenExternalProject]: (request: protocol.OpenExternalProjectRequest) => { - const deltas = this.projectService.openExternalProject(request.arguments); + this.projectService.openExternalProject(request.arguments); + return this.notRequired(); + }, + [CommandNames.OpenExternalProjects]: (request: protocol.OpenExternalProjectsRequest) => { + for (const proj of request.arguments.projects) { + this.projectService.openExternalProject(proj); + } return this.notRequired(); }, [CommandNames.CloseExternalProject]: (request: protocol.CloseExternalProjectRequest) => {