PT #162167333: Ask JDT server for hover links (Eclipse, VSCode)
This commit is contained in:
26
vscode-extensions/commons-vscode/src/java-data.ts
Normal file
26
vscode-extensions/commons-vscode/src/java-data.ts
Normal file
@@ -0,0 +1,26 @@
|
||||
import * as VSCode from "vscode";
|
||||
import {LanguageClient, RequestType} from "vscode-languageclient";
|
||||
|
||||
export function registerJavaDataService(client : LanguageClient) : void {
|
||||
|
||||
const javaTypeRequest = new RequestType<JavaDataParams, any, void, void>("sts/javaType");
|
||||
client.onRequest(javaTypeRequest, async (params: JavaDataParams) =>
|
||||
<any> await VSCode.commands.executeCommand("java.execute.workspaceCommand", "sts.java.type", params)
|
||||
);
|
||||
|
||||
const javadocHoverLinkRequest = new RequestType<JavaDataParams, any, void, void>("sts/javadocHoverLink");
|
||||
client.onRequest(javadocHoverLinkRequest, async (params: JavaDataParams) =>
|
||||
<any> await VSCode.commands.executeCommand("java.execute.workspaceCommand", "sts.java.javadocHoverLink", params)
|
||||
);
|
||||
|
||||
const javadocRequest = new RequestType<JavaDataParams, any, void, void>("sts/javadoc");
|
||||
client.onRequest(javadocRequest, async (params: JavaDataParams) =>
|
||||
<any> await VSCode.commands.executeCommand("java.execute.workspaceCommand", "sts.java.javadoc", params)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
interface JavaDataParams {
|
||||
projectUri: string;
|
||||
bindingKey: string;
|
||||
}
|
||||
@@ -1,23 +0,0 @@
|
||||
'use strict';
|
||||
|
||||
|
||||
import * as VSCode from 'vscode';
|
||||
import { LanguageClient, RequestType } from 'vscode-languageclient';
|
||||
|
||||
export function registerJavadocService(client : LanguageClient) : void {
|
||||
|
||||
let addRequest = new RequestType<JavadocParams, JavadocResponse, void, void>("sts/javadoc");
|
||||
client.onRequest(addRequest, async (params: JavadocParams) =>
|
||||
<JavadocResponse> await VSCode.commands.executeCommand("java.execute.workspaceCommand", "sts.java.javadoc", params)
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
interface JavadocParams {
|
||||
projectUri: string;
|
||||
bindingKey: string;
|
||||
}
|
||||
|
||||
interface JavadocResponse {
|
||||
content: string;
|
||||
}
|
||||
@@ -16,8 +16,8 @@ import { log } from 'util';
|
||||
import { tmpdir } from 'os';
|
||||
import { JVM, findJvm, findJdk } from '@pivotal-tools/jvm-launch-utils';
|
||||
import { registerClasspathService } from './classpath';
|
||||
import { registerJavadocService } from './javadoc';
|
||||
import {HighlightCodeLensProvider} from "./code-lens-service";
|
||||
import {registerJavaDataService} from "./java-data";
|
||||
|
||||
let p2c = P2C.createConverter();
|
||||
|
||||
@@ -260,7 +260,7 @@ function setupLanguageClient(context: VSCode.ExtensionContext, createServer: Ser
|
||||
return { applied: true};
|
||||
});
|
||||
registerClasspathService(client);
|
||||
registerJavadocService(client);
|
||||
registerJavaDataService(client);
|
||||
return client;
|
||||
});
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user