Skip to content

Commit 4fcaee3

Browse files
authored
refactor: change Thenable to Promise in Jdtls methods (#405)
1 parent 81a7950 commit 4fcaee3

11 files changed

+28
-40
lines changed

src/exportJarSteps/ExportJarTaskProvider.ts

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ export class ExportJarTaskProvider implements TaskProvider {
9494
const stepMetadata: IStepMetadata = {
9595
entry: undefined,
9696
workspaceFolder: folder,
97-
projectList: await Jdtls.getProjects(folder.uri.toString()) || [],
97+
projectList: await Jdtls.getProjects(folder.uri.toString()),
9898
steps: [],
9999
elements: [],
100100
classpaths: [],
@@ -115,7 +115,7 @@ export class ExportJarTaskProvider implements TaskProvider {
115115
}
116116
this.tasks = [];
117117
for (const folder of folders) {
118-
const projectList: INodeData[] = await Jdtls.getProjects(folder.uri.toString()) || [];
118+
const projectList: INodeData[] = await Jdtls.getProjects(folder.uri.toString());
119119
const elementList: string[] = [];
120120
if (_.isEmpty(projectList)) {
121121
continue;
@@ -128,7 +128,7 @@ export class ExportJarTaskProvider implements TaskProvider {
128128
"${" + ExportJarConstants.DEPENDENCIES + ":" + project.name + "}");
129129
}
130130
}
131-
const mainClasses: IMainClassInfo[] = await Jdtls.getMainClasses(folder.uri.toString()) || [];
131+
const mainClasses: IMainClassInfo[] = await Jdtls.getMainClasses(folder.uri.toString());
132132
const defaultDefinition: IExportJarTaskDefinition = {
133133
type: ExportJarTaskProvider.exportJarType,
134134
label: `${ExportJarTaskProvider.exportJarType}: exportjar:${folder.name}`,
@@ -141,7 +141,7 @@ export class ExportJarTaskProvider implements TaskProvider {
141141
const stepMetadata: IStepMetadata = {
142142
entry: undefined,
143143
workspaceFolder: folder,
144-
projectList: await Jdtls.getProjects(folder.uri.toString()) || [],
144+
projectList: await Jdtls.getProjects(folder.uri.toString()),
145145
steps: [],
146146
elements: [],
147147
classpaths: [],
@@ -188,7 +188,7 @@ class ExportJarTaskTerminal implements Pseudoterminal {
188188
const artifactMap: Map<string, string[]> = new Map<string, string[]>();
189189
const testOutputFolderMap: Map<string, string[]> = new Map<string, string[]>();
190190
const testArtifactMap: Map<string, string[]> = new Map<string, string[]>();
191-
const projectList: INodeData[] | undefined = await Jdtls.getProjects(this.stepMetadata.workspaceFolder.uri.toString()) || [];
191+
const projectList: INodeData[] = await Jdtls.getProjects(this.stepMetadata.workspaceFolder.uri.toString());
192192
for (const project of projectList) {
193193
await this.setClasspathMap(project, "runtime", outputFolderMap, artifactMap);
194194
await this.setClasspathMap(project, "test", testOutputFolderMap, testArtifactMap);

src/exportJarSteps/ResolveJavaProjectExecutor.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,18 +34,18 @@ export class ResolveJavaProjectExecutor implements IExportJarStepExecutor {
3434
stepMetadata.workspaceFolder = folder;
3535
}
3636
}
37-
stepMetadata.projectList = await Jdtls.getProjects(workspaceUri.toString()) || [];
37+
stepMetadata.projectList = await Jdtls.getProjects(workspaceUri.toString());
3838
return;
3939
}
4040
if (folders.length === 1) {
4141
stepMetadata.workspaceFolder = folders[0];
42-
stepMetadata.projectList = await Jdtls.getProjects(folders[0].uri.toString()) || [];
42+
stepMetadata.projectList = await Jdtls.getProjects(folders[0].uri.toString());
4343
return;
4444
}
4545
const pickItems: IJavaProjectQuickPickItem[] = [];
4646
const projectMap: Map<string, INodeData[]> = new Map<string, INodeData[]>();
4747
for (const folder of folders) {
48-
const projects: INodeData[] = await Jdtls.getProjects(folder.uri.toString()) || [];
48+
const projects: INodeData[] = await Jdtls.getProjects(folder.uri.toString());
4949
if (!_.isEmpty(projects)) {
5050
pickItems.push({
5151
label: folder.name,

src/java/jdtls.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,27 +9,27 @@ import { IMainClassInfo } from "../exportJarSteps/ResolveMainClassExecutor";
99
import { INodeData } from "./nodeData";
1010

1111
export namespace Jdtls {
12-
export function getProjects(params: string): Thenable<INodeData[] | undefined> {
13-
return commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_PROJECT_LIST, params);
12+
export async function getProjects(params: string): Promise<INodeData[]> {
13+
return await commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_PROJECT_LIST, params) || [];
1414
}
1515

16-
export function refreshLibraries(params: string): Thenable<boolean | undefined> {
16+
export async function refreshLibraries(params: string): Promise<boolean | undefined> {
1717
return commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_PROJECT_REFRESH_LIB_SERVER, params);
1818
}
1919

20-
export function getPackageData(params: {[key: string]: any}): Thenable<INodeData[] | undefined> {
21-
return commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_GETPACKAGEDATA, params);
20+
export async function getPackageData(params: {[key: string]: any}): Promise<INodeData[]> {
21+
return await commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_GETPACKAGEDATA, params) || [];
2222
}
2323

24-
export function resolvePath(params: string): Thenable<INodeData[] | undefined> {
25-
return commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_RESOLVEPATH, params);
24+
export async function resolvePath(params: string): Promise<INodeData[]> {
25+
return await commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_RESOLVEPATH, params) || [];
2626
}
2727

28-
export function getMainClasses(params: string): Thenable<IMainClassInfo[] | undefined> {
29-
return commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_PROJECT_GETMAINCLASSES, params);
28+
export async function getMainClasses(params: string): Promise<IMainClassInfo[]> {
29+
return await commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_PROJECT_GETMAINCLASSES, params) || [];
3030
}
3131

32-
export function exportJar(mainClass: string, classpaths: IClasspath[], destination: string): Thenable<IExportResult | undefined> {
32+
export async function exportJar(mainClass: string, classpaths: IClasspath[], destination: string): Promise<IExportResult | undefined> {
3333
return commands.executeCommand(Commands.EXECUTE_WORKSPACE_COMMAND, Commands.JAVA_PROJECT_GENERATEJAR,
3434
mainClass, classpaths, destination);
3535
}

src/views/containerNode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ export class ContainerNode extends DataNode {
2020
return this._project.uri && Uri.parse(this._project.uri).fsPath;
2121
}
2222

23-
protected loadData(): Thenable<INodeData[] | undefined> {
23+
protected loadData(): Thenable<INodeData[]> {
2424
return Jdtls.getPackageData({ kind: NodeKind.Container, projectUri: this._project.uri, path: this.path });
2525
}
2626
protected createChildNodeList(): ExplorerNode[] {

src/views/dependencyDataProvider.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -172,8 +172,8 @@ export class DependencyDataProvider implements TreeDataProvider<ExplorerNode> {
172172
this._rootItems = rootItems;
173173
return rootItems;
174174
} else {
175-
const result: INodeData[] | undefined = await Jdtls.getProjects(folders[0].uri.toString());
176-
result?.forEach((project) => {
175+
const result: INodeData[] = await Jdtls.getProjects(folders[0].uri.toString());
176+
result.forEach((project) => {
177177
rootItems.push(new ProjectNode(project, undefined));
178178
});
179179
this._rootItems = rootItems;

src/views/dependencyExplorer.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ export class DependencyExplorer implements Disposable {
146146

147147
let node: DataNode | undefined = explorerNodeCache.getDataNode(uri);
148148
if (!node) {
149-
const paths: INodeData[] = await Jdtls.resolvePath(uri.toString()) || [];
149+
const paths: INodeData[] = await Jdtls.resolvePath(uri.toString());
150150
if (!_.isEmpty(paths)) {
151151
node = await this._dataProvider.revealPaths(paths);
152152
}

src/views/folderNode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ export class FolderNode extends DataNode {
1515
super(nodeData, parent);
1616
}
1717

18-
protected loadData(): Thenable<INodeData[] | undefined> {
18+
protected loadData(): Thenable<INodeData[]> {
1919
return Jdtls.getPackageData({
2020
kind: NodeKind.Folder,
2121
projectUri: this._project.uri,

src/views/hierarchicalPackageNode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ export class HierarchicalPackageNode extends PackageNode {
5656
}
5757
}
5858

59-
protected loadData(): Thenable<any[] | undefined> {
59+
protected loadData(): Thenable<any[]> {
6060
// Load data only when current node is a package
6161
return this.getHierarchicalNodeData().isPackage ? super.loadData() : Promise.resolve([]);
6262
}

src/views/packageNode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export class PackageNode extends DataNode {
1616
super(nodeData, parent);
1717
}
1818

19-
protected loadData(): Thenable<INodeData[] | undefined> {
19+
protected loadData(): Thenable<INodeData[]> {
2020
return Jdtls.getPackageData({
2121
kind: NodeKind.Package,
2222
projectUri: this._project.nodeData.uri,

src/views/packageRootNode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ export class PackageRootNode extends DataNode {
2121
super(nodeData, parent);
2222
}
2323

24-
protected loadData(): Thenable<INodeData[] | undefined> {
24+
protected loadData(): Thenable<INodeData[]> {
2525
return Jdtls.getPackageData({
2626
kind: NodeKind.PackageRoot,
2727
projectUri: this._project.nodeData.uri,

0 commit comments

Comments
 (0)