Commit Graph

463 Commits

Author SHA1 Message Date
Mark Paluch
1cd5bc835a Polishing.
Reformat code. Add author tags.

See: #698
Original pull request: #708.
2022-01-17 11:00:19 +01:00
Manousos Mathioudakis
b67359dc10 Fix isTrue/isFalse comparison for SQL server by using bind values.
Closes: #698
Original pull request: #708.
2022-01-17 11:00:19 +01:00
Mark Paluch
887cf818a4 Prepare 3.0 M1 (2022.0.0).
See #701
2022-01-14 14:34:47 +01:00
Mark Paluch
c8b663cd97 Adapt to changes in Spring Data Commons
See #660
2022-01-14 08:53:01 +01:00
Mark Paluch
3d728241e9 Prepare 3.0 development.
See #660
2022-01-14 08:53:01 +01:00
Mark Paluch
2753a1cc34 Adopt to Mockito changes.
Closes #700
2022-01-04 14:50:18 +01:00
Mark Paluch
7c2942e459 Reflectively invoke RowMetadata.getColumnMetadatas.
We now use reflection to call RowMetadata.getColumnMetadatas to avoid NoSuchMethodError when using R2DBC 0.9 as the return type has changed in newer R2DBC versions.

Closes #699
2022-01-03 16:28:03 +01:00
Mark Paluch
7bd27c6a51 Unwrap Parameter objects when used within PreparedOperation.
We now unwrap Parameter objects containing type and value for bind parameters when binding these from within a PreparedOperation to a statement.

PreparedOperation objects are expected to use low-level R2DBC API (bind, bindNull) instead of using the Parameter abstraction. Previously, we tried to bind Parameter objects to R2DBC Statements and that has failed as drivers cannot encode Spring's Pararameter type.

Closes #694
2021-12-14 14:45:22 +01:00
Mark Paluch
b827915ceb Polishing.
Remove unused imports. Use more explicit lambda parameter naming.

Also, adopt tests to changed Spring Data Relational SQL generation.

Original pull request: #690.
See #689
2021-12-07 09:23:20 +01:00
JoseLion
25323caf2b Use BeforeConvert callback result on non-versioned updates.
Previously, we used the original entity.

Closes #689
Original pull request: #690.
2021-12-07 09:22:30 +01:00
Jens Schauder
3a3a9d6bdd Prepare 1.4 GA (2021.1.0).
See #668
2021-11-12 10:49:15 +01:00
Mark Paluch
0d5a75abaa Polishing.
Reduce test method visibility.

See #683
2021-11-10 14:34:50 +01:00
Mark Paluch
d5aea5203c Move off RowMetadata.getColumnNames(…) in preparation for R2DBC 0.9.
Closes #683
2021-11-10 14:34:30 +01:00
Mark Paluch
c8ef7b4076 Use fully qualified names in ORDER BY clause.
Closes #680
2021-11-08 10:25:26 +01:00
Mark Paluch
0ad751ec5c Avoid nested entity creation if column value is null.
We now no longer attempt to create instances of nested entities if the column value is null. Previously the null check happened after checking registered custom conversions which has lead to potential object creation for columns containing null values.

Closes #670
2021-10-25 15:43:43 +02:00
Nik Handyman
72ab6c3195 Remove redundant word from reference documentation.
Closes #634
2021-10-25 15:22:03 +02:00
Mark Paluch
5171f501c3 Prepare 1.4 RC1 (2021.1.0).
See #654
2021-10-18 13:47:45 +02:00
Mark Paluch
a53f4ac375 Add support for fluent Query by Example query definition.
Closes: #663
2021-10-08 13:56:34 +02:00
Mark Paluch
944577df67 Polishing.
Fix javadoc.

See #661
2021-10-04 11:25:18 +02:00
Mark Paluch
245ad697c7 Adopt to API changes in Spring Data Relational.
Closes #661
2021-10-04 11:22:20 +02:00
Mark Paluch
8705171763 Fix ReactiveQueryMethodEvaluationContextProvider initialization in R2dbcRepositoryFactoryBean.
We now correctly in initialize ReactiveQueryMethodEvaluationContextProvider in the repository factory bean. Previously, we used an empty instance of ReactiveQueryMethodEvaluationContextProvider that didn't consider registered extensions.

Closes #658
2021-09-28 10:01:54 +02:00
Mark Paluch
ea0148dba5 Prepare 1.4 M3 (2021.1.0).
See #638
2021-09-17 09:44:33 +02:00
Christoph Strobl
e6ca0161ce Change visibility of PersistentEntitiesFactoryBean.
Also fix a javadoc parameter name mismatch along the way.

Closes: #651
2021-09-16 07:59:59 +02:00
Jens Schauder
72518d2bf3 Prepare 1.4 M2 (2021.1.0).
See #625
2021-08-12 15:02:56 +02:00
Mark Paluch
adfee8a297 Remove changelog shipped with the binaries.
Closes #631
2021-07-22 09:09:23 +02:00
Mark Paluch
a46b6751a5 Polishing.
Improve default converter setup by considering R2dbcCustomConversions.STORE_CONVERSIONS to register built-in converters in default configurations.

See #612
2021-07-22 09:07:38 +02:00
Mark Paluch
9b12bcec6e Defer PersistentEntity lookup until actual DTO conversion.
We now lazily instantiate DtoInstantiatingConverter to defer the entity lookup if needed.

Closes #612
2021-07-22 09:01:07 +02:00
Mark Paluch
60fd8420a9 Polishing.
Fix test.

See #628
2021-07-21 09:55:00 +02:00
Mark Paluch
efe46f46cd Improve documentation for Modifying annotation.
Outline that the usage of this annotation leads to calling Results.getRowsUpdated() to obtain the query method result value.

Closes #629
2021-07-21 09:25:46 +02:00
Mark Paluch
eea838cbed Deprecate R2dbcCustomConversions constructor taking Collection of converters.
Creating R2dbcCustomConversions without a dialect or StoreConversions can easily lead to misconfiguration that isn't immediately obvious because of missing store simple types. We now deprecated the constructor and have added guidance on how to properly create R2dbcCustomConversions that is associated with a dialect.

Closes #628
2021-07-21 09:19:28 +02:00
Jens Schauder
d47d256e53 Prepare 1.4 M1 (2021.1.0).
See #584
2021-07-16 14:08:59 +02:00
Jens Schauder
fac386fd62 Updated changelog.
See #584
2021-07-16 14:08:48 +02:00
Jens Schauder
85baac1306 Updated changelog.
See #610
2021-07-16 10:48:18 +02:00
Jay Bryant
fe7308100a Editing.
See #616
Original pull request: #617.
2021-07-15 14:13:34 +02:00
Jens Schauder
7d858c95e4 Improve documentation about name handling.
Closes #616
Original pull request: #617.
2021-07-15 14:12:41 +02:00
Mark Paluch
8ef6fa416d Introduce OutboundRow.clone() method.
Closes #620.
2021-07-13 10:10:25 +02:00
Mark Paluch
e0d6130ac8 Updated changelog.
See #599
2021-06-22 16:07:26 +02:00
Mark Paluch
c01bd622aa Updated changelog.
See #598
2021-06-22 15:29:52 +02:00
Mark Paluch
b1f1aaf957 Fix dynamic query method projection.
Query methods returning dynamic projections based on a Class argument now properly apply projection conversion. Previously, classes not seen by the mapping context were skipped and that caused projecting query methods to return the actual entity type.

Closes #607
2021-06-22 11:21:53 +02:00
Mark Paluch
7b8c1bb0ea Polishing.
Rename method to renderForGeneratedValues to reflect its intended usage and enhance documentation.

Tweak Javadoc.

Closes: #483
Original pull request: #602.
2021-06-11 08:42:58 +02:00
Jens Schauder
c86825740b Registration of columns for generated keys is now dialect dependent.
Different R2DBC drivers expect generated keys when they are in camel case to be quoted or unquoted.
This can now be controlled by implementing `Dialect.renderForGeneratedKeys`.

Closes: #483
Original pull request: #602.
2021-06-11 08:27:15 +02:00
Mark Paluch
a3eb131bc7 Refine conversion directions between boolean and byte using MySQL/MariaDB.
ByteToBooleanConverter is now marked as reading converter and we've added a writing converter with BooleanToByteConverter to ensure proper conversion. Previously, all byte values were converted to boolean resulting in data precision loss.

Closes #589
2021-05-19 10:37:10 +02:00
Mark Paluch
3cefe0bc96 Updated changelog.
See #582
2021-05-14 12:36:38 +02:00
Mark Paluch
f6e2836009 Updated changelog.
See #581
2021-05-14 12:06:41 +02:00
Mark Paluch
673256199c Refactor query method execution to use R2dbcEntityTemplate.
Repository query methods are now executed through R2dbcEntityTemplate to participate in entity callbacks.
Previously, query methods were executed directly using DatabaseClient which didn't allow for entity callbacks.

Closes #591
2021-05-04 14:45:51 +02:00
Mark Paluch
56ec512515 Polishing.
Introduce assertions for OutboundRow.

Closes #593
2021-05-04 09:03:32 +02:00
Mark Paluch
016aab33f2 Correctly translate absent convertible enum values to String[] using Postgres.
We now correctly obtain the target type for a persistent property that should be converted into an array value prior to constructing Parameter.
Previously, we fell back to the actual type without considering potential converters which left collection-like enum properties without a value with the enum array type that was potentially not supported by the database driver.

Closes #593
2021-05-04 09:03:32 +02:00
Mark Paluch
b140d18485 Remove Jasync from tests.
Jasync does not support MySQL's 8.0 caching_sha2_password and there are no plans to support it.

See #594.
2021-05-03 15:02:57 +02:00
Mark Paluch
66f14f2ea4 Upgrade to MySQL 8.0.
Switch to a newer MySQL version to use TLSv1.2 as newer JRE versions no longer support TLSv1/TLSv1.1.

Closes #594.
2021-05-03 15:02:48 +02:00
Mark Paluch
7e13e30a87 Polishing.
Add unit test.

See #587.
2021-04-22 11:46:38 +02:00