Commit Graph

2785 Commits

Author SHA1 Message Date
Thach Le
4e528db223 Refine parameter and field names to align with PageRequest property names.
Align parameter naming with properties to not mix using page with pageNumber, size with pageSize names.

Closes #2882
2023-07-20 15:37:55 +02:00
Mark Paluch
9207e22632 Return the number of SpEL expressions created by SpelExtractor.
Closes #2885
2023-07-20 14:06:23 +02:00
Mark Paluch
e3fbc9b00e After release cleanups.
See #2864
2023-07-14 13:57:59 +02:00
Mark Paluch
13649982e1 Prepare next development iteration.
See #2864
2023-07-14 13:57:57 +02:00
Mark Paluch
1e65157c5f Release version 3.1.2 (2023.0.2).
See #2864
2023-07-14 13:54:07 +02:00
Mark Paluch
fa07def51f Prepare 3.1.2 (2023.0.2).
See #2864
2023-07-14 13:52:53 +02:00
Mark Paluch
f58ce36b86 Polishing.
Introduce dedicated methods to express object creation intents. Remove unnecessary casts.

See #2837
Original pull request: #2838
2023-07-12 15:03:45 +02:00
Christoph Strobl
4d038ff1cb Cache invalid persistent property paths.
Cache failing resolution attempts to avoid reiterating on the same paths over and over again.

Closes #2837
Original pull request: #2838
2023-07-12 15:03:45 +02:00
Yanming Zhou
8b86fb8879 Fix outdated Javadoc.
Closes #2860
2023-07-04 15:55:04 +02:00
Mark Paluch
9af41c9729 Retain direction for empty KeysetScrollPosition.
We now retain the direction when an empty KeysetScrollPosition is created.

Closes #2840
2023-07-04 15:52:44 +02:00
Mark Paluch
0a6b71fc2d Update CI properties.
See #2864
2023-07-03 09:48:57 +02:00
Mark Paluch
98b25cd6dd Upgrade to Maven Wrapper 3.9.3.
See #2872
2023-07-03 09:48:16 +02:00
Oliver Drotbohm
8b2eb8faff Fix query execution mode detection for aggregate types that implement Streamable.
We now short-circuit the QueryMethod.isCollectionQuery() algorithm in case we find the concrete domain type or any subclass of it.

Fixes #2869.
2023-07-01 01:56:34 +02:00
John Blum
8708e2540f After release cleanups.
See #2829
2023-06-16 08:13:30 -07:00
John Blum
527308a0e2 Prepare next development iteration.
See #2829
2023-06-16 08:13:28 -07:00
John Blum
f833c3c257 Release version 3.1.1 (2023.0.1).
See #2829
2023-06-16 08:05:36 -07:00
John Blum
c771fba956 Prepare 3.1.1 (2023.0.1).
See #2829
2023-06-16 08:05:06 -07:00
Mark Paluch
60877d70c7 Polishing.
Use ReverseListIterator instead of Stream API to reduce overhead. ListIterator provides means to iterate backwards so we're wrapping the existing iterator.

See #2857.
Original pull request: #2858.
2023-06-16 10:14:39 +02:00
Christoph Strobl
8671c00e05 WindowIterator should emit items in order when scrolling backwards.
Closes #2857
Original pull request: #2858
2023-06-16 10:14:39 +02:00
Oliver Drotbohm
4e3c06dbb8 Improve reference documentation on repository methods triggering event publication.
Fixes #2855.
2023-06-14 16:09:17 +02:00
Mark Paluch
3281837cbd Use merged bean definitions for EntityCallback type lookup.
We now use the merged bean definition to resolve the defined EntityCallback type.

Previously, we used just the bean definition that might have contained no type hints because of ASM-parsed configuration classes.

Closes #2853
2023-06-14 09:25:35 +02:00
Mark Paluch
602cd28142 Extend documentation on sorting for Keyset scrolling.
Closes #2846
2023-06-13 12:01:09 +02:00
Mark Paluch
af2d97abc6 Consider KeysetScrollPosition direction in WindowIterator.
We now consider the scroll direction in the iterator to properly continue Keyset backward scrolling.

Closes #2851
2023-06-13 11:52:25 +02:00
Mark Paluch
d3c3674230 Upgrade to Maven Wrapper 3.9.2.
See #2849
2023-06-13 08:53:53 +02:00
Mark Paluch
1f25bdaca7 Use snapshot and milestone repositories instead of libs-snapshot and libs-milestone.
Closes #2842
2023-06-06 09:30:27 +02:00
Mark Paluch
f582e5bf7f Unwrap nested collections in default Querydsl binding.
When binding values to collection-like paths, we now unwrap potentially double-wrapped collections as QuerydslPredicateBuilder attempts to convert the binding value to the type of the path.

Our default is a contains binding for single elements.

Closes #2834
2023-06-02 10:33:51 +02:00
Mark Paluch
fec8337d38 Remove CloseableIterator from supported repository return types.
`CloseableIterator` wasn't intended to be here in the first place as it is only an intermediate type.

Closes #2835
2023-05-30 10:16:38 +02:00
Mark Paluch
54ffee0ab8 Refine allocation of DefaultMethodInvokingMethodInterceptor.
We now reduce allocations of DefaultMethodInvokingMethodInterceptor by reusing DefaultMethodInvokingMethodInterceptor within a ProxyProjectionFactory. We also reduced allocations during default method discovery and reuse the default methods information within the projection information cache.

Closes #2831
2023-05-17 10:29:28 +02:00
Mark Paluch
e4f05deed8 Update Jenkins triggers after GA release.
See #2821
2023-05-12 14:40:38 +02:00
Christoph Strobl
610a4751c2 After release cleanups.
See #2821
2023-05-12 14:19:11 +02:00
Christoph Strobl
53622b9943 Prepare next development iteration.
See #2821
2023-05-12 14:19:09 +02:00
Christoph Strobl
06f99322a2 Release version 3.1 GA (2023.0.0).
See #2821
2023-05-12 14:14:38 +02:00
Christoph Strobl
807323d115 Prepare 3.1 GA (2023.0.0).
See #2821
2023-05-12 14:14:06 +02:00
Mark Paluch
46ff9d25a6 Allow reversing Sort.
We now allow reversing the sort order of Sort instances to flip ASC and DESC sort orders.

Closes #2805
2023-05-11 16:13:19 +02:00
Mark Paluch
1ba2932275 Polishing.
Reorder methods.

See #2823
2023-05-11 16:13:18 +02:00
Jens Schauder
fd0964ab72 Make all args Sort.Order constructor public.
The other constructors are already public, and this one is actually needed by subclasses.

Closes #2823
2023-05-11 16:12:59 +02:00
Mark Paluch
69dbb75896 Polishing.
Remove superfluous declarations, fix toString description.

See #2824
2023-05-11 11:10:44 +02:00
Stefano Cordio
63fecdd06e Fix Sort JavaDoc.
Original pull request #2825
2023-05-03 10:38:29 +02:00
Oliver Drotbohm
979e0f401b Fix too restrictive entity callback matching.
We now properly support generic entity callbacks defined via lambda declarations.

Fixes #2822.
2023-05-02 20:54:49 +02:00
Oliver Drotbohm
cac1c211ef Polishing Window scrolling API.
Moved general-purpose factory methods to the common ScrollPosition interface. Introduced a couple of domain specific methods to conveniently work with both Keyset- (to e.g. change direction) and OffsetScrollPosition (to e.g. advance the offset). Consolidated unit tests accordingly.

Moved WindowIterator to ….data.support package. Fixed case of Direction enum values.

Fixes #2824.
2023-04-27 18:02:30 +02:00
p.anisimov
ccd56ef56e Simplify PreferredConstructorDiscovererUnitTests.
Leverage things like Java var keyword to simplify test cases.

Resolves #2695.
Related: #2694.
Original pull request: #2724.
2023-04-24 12:31:59 -05:00
Greg L. Turnquist
c71f2fb8fe After release cleanups.
See #2798
2023-04-14 12:00:00 -05:00
Greg L. Turnquist
c88de96f8b Prepare next development iteration.
See #2798
2023-04-14 11:59:54 -05:00
Greg L. Turnquist
ea706e6886 Release version 3.1 RC1 (2023.0.0).
See #2798
2023-04-14 11:53:57 -05:00
Greg L. Turnquist
9f2fc7570a Prepare 3.1 RC1 (2023.0.0).
See #2798
2023-04-14 11:53:16 -05:00
Mark Paluch
124930eaf5 Upgrade to Maven Wrapper 3.9.1.
See #2815
2023-04-06 16:16:22 +02:00
Oliver Drotbohm
c3b29a5644 Polish Javadoc of PersistentEntity regarding iteration order of PersistentProperty instances.
Fixes #2814.
2023-04-04 13:23:44 +02:00
Oliver Drotbohm
03a6a84bf9 Polishing in mapping package.
Nullable annotations and Objects.equals(…) and Objects.hash(…)/Objects.hashCode(…). Records for internal cache key.

Related issue: #2813.
2023-04-04 11:32:52 +02:00
Oliver Drotbohm
55e14952c8 Remove deprecations in PersistentPropertyAccessor.
Related issue: #2813.
2023-04-04 11:32:52 +02:00
Oliver Drotbohm
35a2f45736 Tighten nullability contract of PersistentPropertyPath.
We should change the definition of `PersistentPropertyPath` to — in its public API — not allow empty instances anymore. Those violate the concept and bleed into the concept's API by having to make all methods nullable (returning null in exactly that "empty" case). An empty property path doesn't make any actual sense as you cannot reasonably answer the methods declared on the interface except by returning null, which then causes client code having to verify the returned values all the time.

This is now changed into only making `PersistentPropertyPath.getParentPath()` nullable and letting it return null for single segment paths. Adapted client code accordingly. `….getRequiredLeadProperty()` is now deprecated in favour of `….getLeafProperty()` not returning null anymore.

Fixes #2813.
2023-04-04 11:32:43 +02:00