Commit Graph

2810 Commits

Author SHA1 Message Date
Oliver Drotbohm
98f20a4457 Drop using FACTORY_BEAN_OBJECT_TYPE attribute entirely.
We now constantly use RootBeanDefinition.setBeanClass(…) (for the raw factory type) and ….setTargetType(…) to declare the full repository factory type including the user defined repository. Any other generics are simply filled with Object.class.

Ticket: #2894.
2023-08-02 17:20:19 +02:00
Oliver Drotbohm
d98eeef745 Set FACTORY_BEAN_OBJECT_TYPE as Class in RepositoryConfigurationDelegate.
This is to accommodate spring-projects/spring-framework#30917.
2023-08-01 22:41:56 +02:00
Rob Winch
c05ed095ce Use io.spring.maven.antora.
See #2890.
2023-08-01 15:36:55 -05:00
Thach Le
91093780dc Fix misordered modifiers 'final static'.
Per the Java Language Specification (Java 17; https://docs.oracle.com/javase/specs/jls/se17/html/jls-8.html#jls-8.3.1), 'static' should appear before 'final'.

This is also consistent with source code analysis tools, like Checkstyle, rules: https://checkstyle.sourceforge.io/apidocs/com/puppycrawl/tools/checkstyle/checks/modifier/ModifierOrderCheck.html.

Fixes #2881.
2023-07-24 16:36:54 +02:00
Greg L. Turnquist
2bfa58d329 Drop old Asciidoctor documentation.
See #2886.
2023-07-21 10:46:31 -05:00
Greg L. Turnquist
b8009acaf8 Polishing. 2023-07-20 09:54:22 -05:00
Greg L. Turnquist
988888d3be Polishing. 2023-07-20 09:45:16 -05:00
Greg L. Turnquist
c12d79a8be Polishing. 2023-07-20 09:39:06 -05:00
Greg L. Turnquist
789ff8d18e Fix link to Spring Framework Antora docs.
See #2886
2023-07-20 09:34:59 -05:00
Greg L. Turnquist
5607ec028f Update antora-playbook site URL.
See #2887
2023-07-20 08:55:28 -05:00
Greg L. Turnquist
7c8c25b29b Migrate Spring Framework doc links to 6.1.
Because Spring Framework's 6.1.x version of Antora ref docs is simply `6.1`, make that the cross referencing link from our end.

See #2886.
2023-07-20 08:42:00 -05:00
Mark Paluch
a11e78dca5 Polishing.
Tweak Javadoc wording, revert visibility changes, add missing Override annotations.

See #2882
2023-07-20 15:37:32 +02:00
Thach Le
8ad79b240d 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:36:29 +02:00
Mark Paluch
0f08311b2e Return the number of SpEL expressions created by SpelExtractor.
Closes #2885
2023-07-20 14:06:17 +02:00
Greg L. Turnquist
c449942053 Move antora-playbook.yml to src/main/antora.
See #2876
2023-07-19 14:49:12 -05:00
Greg L. Turnquist
0fa41f589e Polishing.
See #2876
2023-07-19 10:52:07 -05:00
Greg L. Turnquist
854c375f83 Polishing.
* Move Antora-based documentation underneath src/main/antora.
* Put Antora build process behind a maven profile so it doesn't run on standard CI jobs.
* Refine build process so that final document includes injected build properties.
* Drop epub artwork since we no longer publish that.

See #2876
2023-07-18 21:51:46 -05:00
Rob Winch
876e31901e Implement Antora-based reference docs.
See #2876
2023-07-18 21:44:54 -05:00
Mark Paluch
c4c959b15b After release cleanups.
See #2830
2023-07-14 14:57:12 +02:00
Mark Paluch
623e8933f0 Prepare next development iteration.
See #2830
2023-07-14 14:57:10 +02:00
Mark Paluch
19412adb41 Release version 3.2 M1 (2023.1.0).
See #2830
2023-07-14 14:53:18 +02:00
Mark Paluch
615d91af21 Prepare 3.2 M1 (2023.1.0).
See #2830
2023-07-14 14:52:11 +02:00
Jens Schauder
4650c9c68a Polishing.
Minor formatting changes.

Original pull request #2874
See #2719
2023-07-13 09:11:44 +02:00
Mark Paluch
dc999a8193 Polishing.
Remove outdated Javadoc.

Original pull request #2874
See #2719
2023-07-13 09:11:22 +02:00
Mark Paluch
d0ba125268 Introduce support to pass-thru TemporalAccessor auditing values.
We now allow passing-thru TemporalAccessor auditing values, bypassing conversion if the target value type matches the value provided from e.g. DateTimeProvider.

Refined the error messages and listing all commonly supported types for which we provide converters.

Closes #2719
Original pull request #2874
2023-07-13 09:10:38 +02:00
Mark Paluch
f2387f687a Polishing.
Introduce dedicated methods to express object creation intents. Remove unnecessary casts.

See #2837
Original pull request: #2838
2023-07-12 15:05:59 +02:00
Christoph Strobl
291ce083bd 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:05:59 +02:00
Christoph Strobl
0850e0ccd5 Remove kotlin-maven-plugin dependency.
Original Pull Request: #2866
2023-07-07 11:35:01 +02:00
Christoph Strobl
09281c7182 Polishing.
Guard usage of KotlinReflectUtils with type presence check.
Extend tests to cover primitive arrays.
Move methods from KotlinValueUtils to KotlinReflectUtils.
Move copy value cache to KotlinCopyMethod.

Original Pull Request: #2866
2023-07-07 10:01:55 +02:00
Mark Paluch
80ca2b47ca Add support for Kotlin value classes.
This commit introduces support for Kotlin Value Classes which are designed for a more expressive domain model to make underlying concepts explicit. Spring Data can now read and write types that define properties using Value Classes.
The support covers reflection based instantiation of Kotlin inline class, nullability and defaulting permutations as well as value classes with generics.

Closes: #1947
Original Pull Request: #2866
2023-07-07 09:32:45 +02:00
Mark Paluch
15bb8aa482 Polishing.
Refine documentation. Introduce isLimited method to mirror isPresent/isSorted semantics. Introduce Pageable.toLimit() method to deduplicate code.

See #2827
Original pull request: #2836
2023-07-05 10:23:56 +02:00
Christoph Strobl
a5408a478d Introduce Limit type to limit repository query results.
We now accept Limit as type to express dynamic repository query limits.

Closes #2827
Original pull request: #2836
2023-07-05 10:06:50 +02:00
Yanming Zhou
0d9a91123a Fix outdated Javadoc.
Closes #2860
2023-07-04 15:55:52 +02:00
Mark Paluch
3df0c3b5a6 Retain direction for empty KeysetScrollPosition.
We now retain the direction when an empty KeysetScrollPosition is created.

Closes #2840
2023-07-04 15:53:00 +02:00
Mark Paluch
80b8e12641 Polishing.
Allow nullable OffsetScrollPosition and add support for values wrapped within Optional.

Update tests. Reformat code. Add issue tags to tests.

See #2856
Original pull request: #2861
2023-07-04 15:45:23 +02:00
Yanming Zhou
391607bd14 Introduce argument resolver for OffsetScrollPosition.
Closes #2856
Original pull request: #2861
2023-07-04 15:45:06 +02:00
Mark Paluch
eba49c66ce Update CI properties.
See #2830
2023-07-03 09:50:16 +02:00
Mark Paluch
5fc208f0bf Upgrade to Maven Wrapper 3.9.3.
See #2873
2023-07-03 09:49:37 +02:00
Oliver Drotbohm
ca9f9bfdc8 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:55:59 +02:00
Mark Paluch
05dd7aecfb Remove lingering Lombok resources.
See #2854
2023-06-19 15:33:28 +02:00
Mark Paluch
6ca3170bde 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:28 +02:00
Christoph Strobl
d1568198d8 WindowIterator should emit items in order when scrolling backwards.
Closes #2857
Original pull request: #2858
2023-06-16 10:14:10 +02:00
Oliver Drotbohm
8aff631032 Improve reference documentation on repository methods triggering event publication.
Fixes #2855.
2023-06-14 16:29:49 +02:00
Mark Paluch
f9c1ef9493 Polishing.
Reorganize imports.

See #2854
2023-06-14 15:25:43 +02:00
Mark Paluch
1eda9c497f De-lombok test code.
Closes #2854
2023-06-14 15:23:50 +02:00
Mark Paluch
f1b7952ea5 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:26 +02:00
Mark Paluch
2cbf0fb189 Extend documentation on sorting for Keyset scrolling.
Closes #2846
2023-06-13 12:00:57 +02:00
Mark Paluch
05d68a0eab 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:34 +02:00
Mark Paluch
487795dcee Upgrade to Maven Wrapper 3.9.2.
See #2850
2023-06-13 08:54:57 +02:00
Mark Paluch
b98a03e189 Use snapshot and milestone repositories instead of libs-snapshot and libs-milestone.
Closes #2842
2023-06-06 09:30:39 +02:00