From 74db6882b4c6bd89ab494505dc6cfae39c41df2b Mon Sep 17 00:00:00 2001 From: Anusree Lakshmi Date: Wed, 15 Jan 2025 12:31:43 +0530 Subject: [PATCH 1/2] Replaced SymbolInformation with WorkspaceSymbol --- .../psi/core/PropertiesManagerForJava.java | 6 +++--- .../IJavaWorkspaceSymbolsParticipant.java | 6 +++--- .../java/JaxRsWorkspaceSymbolParticipant.java | 17 ++++++++--------- 3 files changed, 14 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/PropertiesManagerForJava.java b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/PropertiesManagerForJava.java index 9fdc8b172..83cb65afc 100644 --- a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/PropertiesManagerForJava.java +++ b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/PropertiesManagerForJava.java @@ -641,8 +641,8 @@ public CodeAction resolveCodeAction(CodeAction unresolved, IPsiUtils utils) { * @param monitor the progress monitor * @return the workspace symbols for the given java project */ - public List workspaceSymbols(String projectUri, IPsiUtils utils, ProgressIndicator monitor) { - List symbols = new ArrayList<>(); + public List workspaceSymbols(String projectUri, IPsiUtils utils, ProgressIndicator monitor) { + List symbols = new ArrayList<>(); Module module = getModule(projectUri, utils); if (module != null) { collectWorkspaceSymbols(module, utils, symbols, monitor); @@ -660,7 +660,7 @@ public List workspaceSymbols(String projectUri, IPsiUtils uti return null; } - private void collectWorkspaceSymbols(Module project, IPsiUtils utils, List symbols, + private void collectWorkspaceSymbols(Module project, IPsiUtils utils, List symbols, ProgressIndicator monitor) { if (monitor.isCanceled()) { return; diff --git a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/java/symbols/IJavaWorkspaceSymbolsParticipant.java b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/java/symbols/IJavaWorkspaceSymbolsParticipant.java index e368d9952..71a54ffe1 100644 --- a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/java/symbols/IJavaWorkspaceSymbolsParticipant.java +++ b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/core/java/symbols/IJavaWorkspaceSymbolsParticipant.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2024 Red Hat Inc. and others. + * Copyright (c) 2024-2025 Red Hat Inc. and others. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0 which is available at @@ -17,7 +17,7 @@ import com.intellij.openapi.module.Module; import com.intellij.openapi.progress.ProgressIndicator; import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.utils.IPsiUtils; -import org.eclipse.lsp4j.SymbolInformation; +import org.eclipse.lsp4j.WorkspaceSymbol; import java.util.List; @@ -36,7 +36,7 @@ public interface IJavaWorkspaceSymbolsParticipant { * @param symbols the list of symbols to add to * @param monitor the progress monitor */ - void collectSymbols(Module project, IPsiUtils utils, List symbols, + void collectSymbols(Module project, IPsiUtils utils, List symbols, ProgressIndicator monitor); } \ No newline at end of file diff --git a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java index 83c3b1e2e..605f1c65f 100644 --- a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java +++ b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java @@ -1,5 +1,5 @@ /******************************************************************************* -* Copyright (c) 2024 Red Hat Inc. and others. +* Copyright (c) 2024-2025 Red Hat Inc. and others. * * This program and the accompanying materials are made available under the * terms of the Eclipse Public License v. 2.0 which is available at @@ -22,10 +22,8 @@ import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.jaxrs.JaxRsContext; import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.jaxrs.JaxRsMethodInfo; import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.utils.IPsiUtils; -import org.eclipse.lsp4j.Location; -import org.eclipse.lsp4j.Range; -import org.eclipse.lsp4j.SymbolInformation; -import org.eclipse.lsp4j.SymbolKind; +import org.eclipse.lsp4j.*; +import org.eclipse.lsp4j.jsonrpc.messages.Either; import java.net.MalformedURLException; import java.net.URL; @@ -44,7 +42,7 @@ public class JaxRsWorkspaceSymbolParticipant implements IJavaWorkspaceSymbolsPar private static final Logger LOGGER = Logger.getLogger(JaxRsWorkspaceSymbolParticipant.class.getName()); @Override - public void collectSymbols(Module project, IPsiUtils utils, List symbols, ProgressIndicator monitor) { + public void collectSymbols(Module project, IPsiUtils utils, List symbols, ProgressIndicator monitor) { if (monitor.isCanceled()) { return; } @@ -106,10 +104,11 @@ private static Set getAllJaxRsTypes(Module javaProject, IPsiUtils util return jaxrsTypes; } - private static SymbolInformation createSymbol(JaxRsMethodInfo methodInfo, IPsiUtils utils) throws MalformedURLException { + private static WorkspaceSymbol createSymbol(JaxRsMethodInfo methodInfo, IPsiUtils utils) throws MalformedURLException { TextRange sourceRange = methodInfo.getJavaMethod().getNameIdentifier().getTextRange(); Range r = utils.toRange(methodInfo.getJavaMethod(), sourceRange.getStartOffset(), sourceRange.getLength()); Location location = new Location(methodInfo.getDocumentUri(), r); + Either eitherLocation = Either.forLeft(location); StringBuilder nameBuilder = new StringBuilder("@"); URL url = new URL(methodInfo.getUrl()); @@ -118,10 +117,10 @@ private static SymbolInformation createSymbol(JaxRsMethodInfo methodInfo, IPsiUt nameBuilder.append(": "); nameBuilder.append(methodInfo.getHttpMethod()); - SymbolInformation symbol = new SymbolInformation(); + WorkspaceSymbol symbol = new WorkspaceSymbol(); symbol.setName(nameBuilder.toString()); symbol.setKind(SymbolKind.Method); - symbol.setLocation(location); + symbol.setLocation(eitherLocation); return symbol; } From dcf9f1ee06a7608bfd5df68159018e0b6833f4e2 Mon Sep 17 00:00:00 2001 From: Anusree Lakshmi Date: Wed, 29 Jan 2025 19:39:30 +0530 Subject: [PATCH 2/2] Replaced with single class imports --- .../jaxrs/java/JaxRsWorkspaceSymbolParticipant.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java index 605f1c65f..39141a2bd 100644 --- a/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java +++ b/src/main/java/com/redhat/devtools/intellij/lsp4mp4ij/psi/internal/jaxrs/java/JaxRsWorkspaceSymbolParticipant.java @@ -22,7 +22,11 @@ import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.jaxrs.JaxRsContext; import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.jaxrs.JaxRsMethodInfo; import com.redhat.devtools.intellij.lsp4mp4ij.psi.core.utils.IPsiUtils; -import org.eclipse.lsp4j.*; +import org.eclipse.lsp4j.Location; +import org.eclipse.lsp4j.Range; +import org.eclipse.lsp4j.SymbolKind; +import org.eclipse.lsp4j.WorkspaceSymbol; +import org.eclipse.lsp4j.WorkspaceSymbolLocation; import org.eclipse.lsp4j.jsonrpc.messages.Either; import java.net.MalformedURLException;