Files
spring-tools/vscode-extensions/commons-vscode/src/classpath-service.ts
nsingh 591adec33d Added JDT command for getting Java project
Also added a JDT Project cache in the Spring Boot LS
2018-03-09 12:05:31 -08:00

31 lines
916 B
TypeScript

'use strict';
import * as VSCode from 'vscode';
import { LanguageClient, RequestType } from 'vscode-languageclient';
export function registerClasspathService(client : LanguageClient) : void {
let classpathRequest = new RequestType<ClasspathParams, ClasspathResponse, void, void>("sts/classpath");
client.onRequest(classpathRequest, async (params: ClasspathParams) => {
return await executeClasspathCommand(params.resourceUri);
});
}
async function executeClasspathCommand(resourceUri : string) : Promise<ClasspathResponse> {
return <ClasspathResponse> (await VSCode.commands.executeCommand("java.execute.workspaceCommand", "sts.java.resolveClasspath", resourceUri));
}
interface ClasspathResponse {
entries: ClasspathEntry[],
defaultOutputFolder : string
}
interface ClasspathParams {
resourceUri: string
}
interface ClasspathEntry {
kind : string,
path : string
}