Commit Graph

121 Commits

Author SHA1 Message Date
Mark Paluch
f483d385d2 Extend license header copyright years to 2025.
See #1971
2025-01-08 09:58:51 +01:00
Tran Ngoc Nhan
f2d62ad7e7 Polishing.
Pattern matching usage.
Diamond operator usage.
Remove unused import.
isEmpty usage.

Original pull request #1912
2024-10-21 09:10:13 +02:00
Mark Paluch
8c6364b4bf Polishing.
Simplify R2DBC expression handling. Use new ValueExpression API instead of holding parameter binding duplicates.

Reformat code. Add author tags.

See #1904
Original pull request: #1906
2024-10-09 13:35:18 +02:00
Marcin Grzejszczak
d526cd3a22 Add support for Value Expressions for Repository Query methods.
Closes #1904
Original pull request: #1906
2024-10-09 13:35:16 +02:00
Mark Paluch
4834d083c4 Add StatementFilterFunction to R2dbcEntityTemplate.
See #1652
2024-10-01 10:28:48 +02:00
Mark Paluch
90b6d8e8a8 Polishing.
Use FilterFunction instead of nullable fetchSize to avoid unconditional capturing lambdas and improve defaulting.

Add since tag.

See #1652
Original pull request: #1898
2024-10-01 10:20:25 +02:00
Mikhail2048
96a4121058 Add fetchSize to ReactiveSelectOperationSupport.
Closes #1652
Original pull request: #1898
2024-10-01 10:18:03 +02:00
Jens Schauder
95a9f64c3e Polishing.
Original pull request #1895
2024-09-24 09:09:42 +02:00
Tran Ngoc Nhan
146e5495df Minor refactoring.
Original pull request #1895
2024-09-24 09:09:08 +02:00
Tran Ngoc Nhan
9277792d87 Polishing.
Original pull request #1894
2024-09-23 09:20:47 +02:00
Tran Ngoc Nhan
7b2c4e5f23 Remove unused imports.
Original pull request #1877
2024-09-09 08:58:02 +02:00
Mark Paluch
72774135a7 Polishing.
Remove Preprocessor interface. Add property accessors to RelationalQueryLookupStrategy. Reuse property accessors instead of loosely coupled object access.

See #1856
Original pull request #1863
2024-09-04 10:04:55 +02:00
Jens Schauder
f937738038 Support for table names in SpEL expressions.
SpEL expressions in queries get processed in two steps:

1. First SpEL expressions outside parameters are detected and processed.
This is done with a `StandardEvaluationContext` with the variables `tableName` and `qualifiedTableName` added.
This step is introduced by this commit.

2. Parameters made up by SpEL expressions are processed as usual.

Closes #1856
Original pull request #1863
2024-09-04 10:04:55 +02:00
Jens Schauder
848ffee253 Remove deprecated code.
Original pull request #1869
2024-08-30 13:28:01 +02:00
Christoph Strobl
2040247a11 Add support for using custom BeanNameGenerator.
Closes: #1853
2024-08-09 11:19:37 +02:00
Sanghyuk Jung
ec3c7081a8 Remove duplicated "the" in JavaDoc.
Original pull request #1840
2024-08-02 13:22:42 +02:00
LLEFEVRE
97cf38f1db Upgrade Oracle Database version.
Upgrade database itself to the latest 23ai version.
The JDBC driver to 23.4.0.24.05
The R2DBC driver to 1.2.0

Closes #1804
Original pull request #1805
2024-06-06 16:07:11 +02:00
Mark Paluch
a38b85c7fb Align OffsetScrolling to zero-based indexes.
Closes #1764
2024-04-11 09:58:02 +02:00
Mark Paluch
ae272e2a1e Align OffsetScrolling to zero-based indexes.
Closes #1764
2024-04-10 16:11:58 +02:00
Jens Schauder
1600740fb7 Polishing.
Code formatting.
Adding author tags.
Added test for jdbc.
Fixed typo.

See #1744
Original pull request #1745
2024-03-13 09:43:45 +01:00
七夜
4a787171e3 Support conversion of elements in NOT_IN clause.
Closes #1744
Original pull request #1745
2024-03-13 09:43:44 +01:00
Mark Paluch
3b7da898a7 Fix Javadoc build.
Remove package-info for package without sources. Remove ci profile from initial build steps to avoid duplicate tasks. Remove unused asciidoctor plugin.

See #1742
2024-02-20 09:32:23 +01:00
Mark Paluch
52fe74e3cf Read properties for DTO projections only once.
We now skip property population for properties that are populated through an entity creator (constructor/factory method).

Closes #1725
2024-01-29 09:00:27 +01:00
Mark Paluch
be94f7695c Polishing.
Reformat code.

See #1723
2024-01-25 16:19:09 +01:00
Sebastian Wieland
8e7a1e1e1c Fix R2dbcEntityTemplate.getRowsFetchSpec(…) to use the correct Converter for result type conversion.
Closes #1723
2024-01-25 16:18:35 +01:00
Mark Paluch
a24bafd88b Polishing.
Add Geometry super-type only as subtypes are considered simple types already. Ensure reflective simple type AOT registration.

Original pull request: #1713
See #1711
2024-01-08 13:39:23 +01:00
Pete Setchell
ebdbe047d4 Consider JTS geometry types as simple types.
Original pull request: #1713
Closes #1711
2024-01-08 13:39:18 +01:00
Mark Paluch
5647835c94 Consider registered converters using Row and RowDocument as source.
We now consider converters for RowDocument. Additionally, we reinstated conversion from R2DBC's Row type into entities as that converter functionality got lost during the converter revision.

Closes #1710
2024-01-04 15:00:45 +01:00
Mark Paluch
fbc3bf09e1 Extend license header copyright years to 2024.
See #1709
2024-01-02 14:42:28 +01:00
Mark Paluch
bb1e62f56a Consider io.r2dbc.spi.Parameter as simple type.
We now consider R2DBC's Parameter as simple type to avoid entity handling.

Closes #1696
2023-12-13 08:35:31 +01:00
Mark Paluch
cc43be8d02 Adopt RelationalParameters and RelationalParameter to reflect the actual parameter type when using generics.
Closes #1691
2023-12-08 12:02:22 +01:00
Mark Paluch
eb6303605c Fix interface projection for entities that implement the interface.
Using as with an interface that is implemented by the entity, we no longer attempt to instantiate the interface bur use the entity type instead.

Closes #1690
2023-12-06 15:29:18 +01:00
Mark Paluch
60e22dad7f Add test to verify interface projections through R2dbcEntityTemplate.
See #1690
2023-12-06 10:25:17 +01:00
Mark Paluch
fd011ec603 Polishing.
Switch to spaces.

See #1690
2023-12-06 10:23:02 +01:00
Mark Paluch
61a145178b Use Converter-based projection for R2DBC repository queries.
Previously, we instantiated the underlying entity. Now, we either read results directly into the result type or use a Map-backed projection.

Closes #1687
2023-12-05 15:46:21 +01:00
Mark Paluch
343569bae0 Create PartTree against the domain type.
We now derive queries against the domain type and no longer using the result type to ensure query mapping and query creation against the domain type.

Closes #1688
2023-12-05 15:09:17 +01:00
Jens Schauder
e2a7508adc Switch to Testcontainers Oracle Free.
Timeout increased from the default because that cause problems on CI.
Brought SD JDBC now uses `ojdbc11` as R2DBC.

Closes #1665
Original pull request #1668
2023-11-20 15:31:36 +01:00
Mark Paluch
003531216a Polishing.
Fix line breaks.

See #1647
2023-11-06 10:35:16 +01:00
Mark Paluch
9ffbfb6f99 Improve count and exists query projections.
We now use COUNT(*) and SELECT 1 for count respective exists queries to enable database optimizers instead of using the key columns.

Closes #1647
2023-11-06 10:35:05 +01:00
Mark Paluch
5312731623 Reject Limit parameter using String-based queries.
Document limitations, add test cases for derived queries.

Closes #1654
2023-11-02 09:26:43 +01:00
Mark Paluch
5398b94020 Deprecate Basic…Converter infrastructure.
Merge basic converters into Mapping…Converters and introduce deprecated variant to provide guidance for migration off the deprecated types.

Cleanup no longer required code.

Original pull request #1618
See #1554
2023-10-13 10:28:18 +02:00
Mark Paluch
665ae6b5a8 Migrate R2DBC to read RowDocument.
Original pull request #1618
See #1554
2023-10-13 10:27:53 +02:00
Mark Paluch
a555119f8b Polishing.
Remove Jetbrains annotation usage.

Simplify code, remove code that is commented out, extract methods, pass PersistentEntity as argument instead of creating instances that hold PersistentEntity as field to align the class lifecycle with its contextual usage.

Refactor AggregateReader lifecycle, use a single instance as there is no entity-specific state attached to AggregateReader.

Add Javadoc.

See #1448
Original pull request: #1622
2023-09-27 10:05:16 +02:00
Jens Schauder
f3bc0af8c4 Polishing.
Simplify ValueFunction mapping. Remove invariants of findBy SQL generation in favor of the Condition-based variant. Reduce visibility. Change return value of AggregateReader to List

See #1601
Original pull request: #1617
2023-09-26 14:36:47 +02:00
Jens Schauder
0fdeaebbee Add support for arbitrary where clauses in Single Query Loading.
Closes #1601
Original pull request: #1617
2023-09-26 14:36:46 +02:00
Mark Paluch
bd1c670d55 Add support for fluent limit(int) and scroll(OffsetScrollPosition) to Query by Example queries.
Closes #1609
2023-09-14 08:40:56 +02:00
valery1707
6d1d96681f Remove an extra level in the class hierarchy.
Closes #1574
2023-09-13 15:10:36 +02:00
Mark Paluch
d6d99571b1 Introduce MappingRelationalConverter.
Add sophisticated converter to read aggregates from a RowDocument including support for maps, collections, subdocuments, and embeddables considering registered converters.
Use ResultSetRowDocumentExtractor to extract result multi-sets into RowDocument and then later apply object mapping.

Original pull request #1604
Closes #1586
2023-09-08 16:04:12 +02:00
Mark Paluch
879984d2b6 Polishing.
Push JDBC-specific simple types into JdbcPostgresDialect instead of having these in the top-level dialect that shouldn't be tied to any driver technology.

Introduce profile to run Postgres tests only.
2023-09-06 14:54:09 +02:00
Mark Paluch
99a8b01809 Harmonize content.
Refactor content to a natural flow, remove duplications, extract partials.

See #1597
2023-09-01 11:14:02 +02:00