Bug 551625 - Provide extension point to manage custom uri on client side
Summary: Provide extension point to manage custom uri on client side
Status: UNCONFIRMED
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: LSP4E (show other bugs)
Version: unspecified   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-09-30 07:50 EDT by Angelo ZERR CLA
Modified: 2022-02-04 09:12 EST (History)
2 users (show)

See Also:


Attachments
Quarkus definition in vscode (258.31 KB, image/gif)
2019-09-30 07:50 EDT, Angelo ZERR CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Angelo ZERR CLA 2019-09-30 07:50:55 EDT
Created attachment 280102 [details]
Quarkus definition in vscode

Today LSP4E support uri 'file', 'http' but I would like to support custom uri 'jdt' which is an URI mananged by JDT LS which gives the capability to open java element from JAR or src.

Here a sample of this kind of uri:

-----------------------------------------------------
jdt://contents/quarkus-reactive-pg-client-0.19.1.jar/io.quarkus.reactive.pg.client.runtime/DataSourceConfig.class?=using-vertx/C:%5C/Users%5C/azerr%5C/.m2%5C/repository%5C/io%5C/quarkus%5C/quarkus-reactive-pg-client%5C/0.19.1%5C/quarkus-reactive-pg-client-0.19.1.jar=/maven.pomderived=/true=/maven.pomderived=/true=/javadoc_location=/jar:file:%5C/C:%5C/Users%5C/azerr%5C/.m2%5C/repository%5C/io%5C/quarkus%5C/quarkus-reactive-pg-client%5C/0.19.1%5C/quarkus-reactive-pg-client-0.19.1-javadoc.jar%5C!%5C/=/maven.groupId=/io.quarkus=/maven.artifactId=/quarkus-reactive-pg-client=/maven.version=/0.19.1=/maven.scope=/compile%3Cio.quarkus.reactive.pg.client.runtime(DataSourceConfig.class
-----------------------------------------------------

I need to manage this kind of URI to support Quarkus property definition in Eclipse IDE (see my POC https://github.com/angelozerr/quarkus-lsp4e). You can see attached demo with vscode.

It should be cool if LSP4E could provide an extension point to manage this jdt uri.
Comment 1 Mickael Istria CLA 2019-09-30 08:02:36 EDT
I don't want to rush on this one as I think this pattern is an important one and the proposal would just allow a suboptimal solution in.
This request seems to ask the client to host logic related to language server specific URI scheme. To me, this seems against the principle and benefits of the language servers, as each client would need to implement support for this URI scheme.
Couldn't the language server send more "standard" URI insteads, such as `jar:file:/path/to/quarkus-reactive-pg-client-0.19.1.jar!/io/quarkus/reactive/pg/client/runtime.class` ones?
Also, I see here an opportunity for the language server specification to improve the URIs in general.
Comment 2 Angelo ZERR CLA 2019-09-30 08:36:13 EDT
Many thanks for your answer @Mickael. It seems that you have already a sicussion about this topic at https://github.com/eclipse/eclipse.jdt.ls/issues/943

I don't know what is the better solution, I created this issue because Quarkus LS integration in Eclipse IDE requires the capability to open a class/java file and select a field. Without supporting this java kind url, we cannot manage Quarkus definition in Eclipse IDE.
Comment 3 Mickael Istria CLA 2021-11-16 15:56:09 EST
Eclipse LSP4E is moving away from this bugs.eclipse.org issue tracker to https://github.com/eclipse/lsp4e/issues/ instead. If this issue is relevant to you, your action is required.
0. Verify this issue is still happening with latest LSP4E snapshots (from https://download.eclipse.org/lsp4e/snapshots )
  if issue has disappeared, please change status of this issue to "CLOSED WORKFORME" with some details about your testing environment and how you did verify the issue; and you're done
  if issue is still present with snapshots:
* Create a new issue at https://github.com/eclipse/lsp4e/issues/
  ** Use as title in GitHub the title of this Bugzilla ticket (may include the bug number or not, at your own convenience)
  ** In the GitHub description, start with a link to this bugzilla ticket
  ** Optionally add new content to the description if it can helps towards resolution
  ** Submit GitHub issue
* Update bugzilla ticket
  ** Add to "See also" property (up right column) the link to the newly created GitHub issue
  ** Add a comment "Migrated to <link-to-newly-created-GitHub-issue>"
  ** Set status as CLOSED MOVED
  ** Submit

All issues that remain open will be automatically closed soon. Then the Bugzilla component for LSP4E will be archived and made read-only.