export async function getTargetPomXml()

in src/Utils/index.ts [137:157]


export async function getTargetPomXml(): Promise<vscode.Uri> {
    if (vscode.window.activeTextEditor) {
        const activeUri = vscode.window.activeTextEditor.document.uri;
        if ("pom.xml" === path.basename(activeUri.path).toLowerCase()) {
            return activeUri;
        }
    }

    const candidates: vscode.Uri[] = await vscode.workspace.findFiles("**/pom.xml");
    if (!_.isEmpty(candidates)) {
        if (candidates.length === 1) {
            return candidates[0];
        } else {
            return await vscode.window.showQuickPick(
                candidates.map((c: vscode.Uri) => ({ value: c, label: getRelativePathToWorkspaceFolder(c), description: getWorkspaceFolderName(c) })),
                { placeHolder: "Select the target project." },
            ).then(res => res && res.value);
        }
    }
    return undefined;
}