Skip to content

Polish visualization of repository nodes in Spring outline #1536

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
odrotbohm opened this issue Apr 9, 2025 · 2 comments
Closed

Polish visualization of repository nodes in Spring outline #1536

odrotbohm opened this issue Apr 9, 2025 · 2 comments
Assignees
Labels
for: eclipse something that is specific for Eclipse for: vscode something that is specific for VSCode theme: spring index & symbols theme: spring-data-support type: enhancement

Comments

@odrotbohm
Copy link
Member

It would be cool if the nodes representing Spring Data repositories in the Spring outline were polished as follows:

  • The root node for the repository looks something like this @+ 'payments' (Payment<?>) Repository<Payment<?>,PaymentIdentifier> (class). This is a lot of detail for a high-level node. I wonder if it should be changed to PaymentRepository (@+ payments), i.e., $typeName (@beanLookup).
  • The individual query methods are currently only listing the names. It would be nice if it were the full signature. So instead of findByStatus, it'd be findByStatus(Status) : List<Payment<?>>
@martinlippert
Copy link
Member

  • The root node for the repository looks something like this @+ 'payments' (Payment<?>) Repository<Payment<?>,PaymentIdentifier> (class). This is a lot of detail for a high-level node. I wonder if it should be changed to PaymentRepository (@+ payments), i.e., $typeName (@beanLookup).

I thought it might be useful to see some type information in the root node, so that you get a more precise idea for which domain type the repository is defined. E.g. you have something like:

public interface Drinks extends CrudRepository<Drink, DrinkIdentifier>

The simple version would be:

  • Drinks (@+ 'drinks')

The current version would be:

  • @+ 'drinks' (Drink) Repository<Drink, DrinkIdentifier>
    (@beanLookup (@domainType) @repositoryDeclaration

Don't you think that we should at least include the exact domain type in here?

@martinlippert
Copy link
Member

I simplified the symbol for repositories (for this example) now to @+ 'drinks' Repository(Drink), which basically goes back to @+ 'beanName' Repository(domainType).

If we want to do further refinements here, happy to incorporate them while working on the more comprehensive structural view moving forward.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
for: eclipse something that is specific for Eclipse for: vscode something that is specific for VSCode theme: spring index & symbols theme: spring-data-support type: enhancement
Projects
None yet
Development

No branches or pull requests

2 participants