Skip to content
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

feat: Add interfaces for CRUD services #20743

Open
wants to merge 27 commits into
base: main
Choose a base branch
from
Open

feat: Add interfaces for CRUD services #20743

wants to merge 27 commits into from

Conversation

Artur-
Copy link
Member

@Artur- Artur- commented Dec 18, 2024

These were previously in Hilla but are equally useful in Flow applications

Copy link

github-actions bot commented Dec 18, 2024

Test Results

1 162 files  + 3  1 162 suites  +3   1h 33m 39s ⏱️ +41s
7 614 tests +35  7 558 ✅ +35  56 💤 ±0  0 ❌ ±0 
7 980 runs  +28  7 915 ✅ +28  65 💤 ±0  0 ❌ ±0 

Results for commit 0807c0f. ± Comparison against base commit f081fc9.

♻️ This comment has been updated with latest results.

These were previously in Hilla but are equally useful in Flow applications
@Artur- Artur- requested a review from peholmst December 18, 2024 16:17
Copy link
Member

@peholmst peholmst left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this is a breaking change anyway, I took the liberty of being extra picky with the review.

@@ -0,0 +1,2 @@
@org.springframework.lang.NonNullApi
package com.vaadin.flow.spring.data.jpa;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe also add @NullMarked from JSpecify?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why would we need both?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If removing @NonNullApi does not break anything, then by all means remove it.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On the contrary, Hilla only supports @NonNullApi

@@ -0,0 +1,2 @@
@org.springframework.lang.NonNullApi
package com.vaadin.flow.spring.data;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same thing here?

@JsonSubTypes({ @Type(value = OrFilter.class, name = "or"),
@Type(value = AndFilter.class, name = "and"),
@Type(value = PropertyStringFilter.class, name = "propertyString") })
public class Filter implements Serializable {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the Filter classes meant to mainly be created by Jackson, or is there a situation where a developer may want to create them in Java as well? Also why are the Filter classes mutable and not immutable?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need to create some examples to show usage before this is merged. I think they should be public and ok to create by hand but they don't need to be mutable

@@ -0,0 +1,2 @@
@org.springframework.lang.NonNullApi
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding @NullMarked here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants