Commit Graph

376 Commits

Author SHA1 Message Date
Christoph Strobl
4aa1de28a7 Prepare 1.3 M2 (2021.0.0).
See #511
2021-01-13 15:33:34 +01:00
Christoph Strobl
f950390b9a Updated changelog.
See #511
2021-01-13 15:33:31 +01:00
Christoph Strobl
6be58ccc03 Updated changelog.
See #512
2021-01-13 15:16:18 +01:00
Mark Paluch
da5eb2abfe Polishing.
Reduce method visibility.

See #519
2021-01-08 11:04:25 +01:00
Mark Paluch
d79a401425 Read domain type when returning an implemented interface from repository query methods.
We now read the domain type instead of trying to materialize an interface if the type returned from the query method is implemented by the domain object handled by the repository.

Closes #519
2021-01-08 11:03:55 +01:00
Mark Paluch
4ee15834dc Polishing.
Reduce test method/class visibility.

See #518
2021-01-07 15:36:08 +01:00
Mark Paluch
6e7e03963d Apply UPPER function to all columns when enabling ignoreCase.
We now apply the UPPER function regardless of whether we could resolve the criteria property to a column. Previously, we required a resolved property of a String type which prevented non-mapped properties from case-insensitive queries.

Closes #518
2021-01-07 15:35:00 +01:00
Mark Paluch
2b4bc0d140 Update copyright year to 2021.
Closes #523
2021-01-07 11:38:39 +01:00
Kamal Mahmud
c6fe015d37 Reference Docs: typo on firstname
Closes #514
2021-01-07 11:34:30 +01:00
YuanQiang.Yang
8253f23d7e Update changelog.txt.
Fix typo decription -> description.

Closes gh-515.
2021-01-07 11:14:50 +01:00
Mark Paluch
7926f1ecc1 #497 - Updated changelog. 2020-12-09 16:47:37 +01:00
Mark Paluch
776ab21b1b #489 - Prepare 1.3 M1 (2021.0.0). 2020-12-09 15:21:28 +01:00
Mark Paluch
83cccc8ff0 #489 - Updated changelog. 2020-12-09 15:21:25 +01:00
Mark Paluch
cfdb7157d2 #487 - Updated changelog. 2020-12-09 12:42:22 +01:00
Mark Paluch
cf75e26d45 #498 - Polishing.
Reorder methods. Replace Guava imports with proper ones. Consistent override comments.

Original pull request: #501.
2020-11-25 14:46:38 +01:00
Jens Schauder
843c402e00 #498 - Implements ReactiveCrudRepository.deleteAllById.
See also: DATACMNS-800.
Original pull request: #501.
2020-11-25 14:46:24 +01:00
Mark Paluch
86eec9e61f #505 - Correctly describe AfterSaveCallback. 2020-11-20 11:59:26 +01:00
Mark Paluch
f2507858b0 #503 - Update documentation to reflect Spring R2DBC's logger prefix. 2020-11-19 15:15:43 +01:00
Mark Paluch
b85d68f115 #488 - Updated changelog. 2020-11-11 12:34:35 +01:00
Mark Paluch
43068e0e13 #492 - Polishing.
Use Java 8 syntax for Map creation. Add author tags. Use simpler table names.

Original pull request: #493.
2020-11-10 12:12:17 +01:00
JoseLion
63fcd73204 #493 - Add HStore support on Postgres dialect.
Original pull request: #493.
2020-11-10 12:05:17 +01:00
Michael Simons
1b2332e8df #494 - Fix links to Spring-Framework reference docs.
Original pull request: #495.
2020-11-03 15:18:49 +01:00
Mark Paluch
3879c2db78 #481 - Prepare 1.2 GA (2020.0.0). 2020-10-28 15:46:31 +01:00
Mark Paluch
466418803b #481 - Updated changelog. 2020-10-28 15:46:20 +01:00
Mark Paluch
6d12fbb1da #461 - Updated changelog. 2020-10-28 15:03:00 +01:00
Christoph Strobl
1e57e4438c #462 - Prepare 1.2 RC2 (2020.0.0). 2020-10-14 14:27:38 +02:00
Christoph Strobl
2a60a1494b #462 - Updated changelog. 2020-10-14 14:27:34 +02:00
Mark Paluch
101725c7e5 #475 - Polishing.
Extract mapping target type into field instead of obtaining it each time from EntityMetadata.
2020-10-08 15:04:59 +02:00
Mark Paluch
b8f4e8b765 #475 - Refine projection result mapping.
We now differentiate the result mapping based on projection type and query type. Previously, all projections used the domain type to map results first and then serve as backend for the projection proxy/DTO creation.
We now use direct result to DTO mapping for String-based queries to allow for a greater flexibility when declaring DTO result types. Interface-based projections and derived queries remain using the two-step process of result to domain type mapping and then mapping the domain type into the projection.
2020-10-08 15:04:14 +02:00
Mark Paluch
c00184b130 #465 - Polishing.
Fix type name in Javadoc.
2020-10-07 14:51:11 +02:00
Mark Paluch
03a667ca6d #465 - Convert bind values for String-based queries to their native type.
We now invoke the converter for query arguments of String-based queries (using the Query annotation or named queries) to convert the value into a type that can be used by the driver.

Previously all values were passed-thru which caused for e.g. enums to pass-thru these to the driver and the driver encode failed.
2020-10-07 14:50:54 +02:00
Mark Paluch
c3cb70f5ec #469 - Suppress emission of null values when using simple and primitive result types.
Results projected onto simple and primitive types that are null are no longer emitted.

A SQL query SELECT MAX(age) FROM my_table that returns a SQL NULL and that would be consumed as Long.class (Publisher<Long>) is an example for a primitive type that can be null. Since Reactive Streams prohibits the propagation of null values by a Publisher to a Subscriber the only viable option is to suppress null results by wrapping the mapping function into Optional result values and filter these values later to avoid null being emitted.
2020-10-02 10:47:32 +02:00
Mark Paluch
7a094b6765 #395 - Add support for suspend repository query methods returning List<T>. 2020-09-22 14:53:58 +02:00
Mark Paluch
d3823947aa #468 - Correctly map result of exists queries.
We now map results of exists queries to a boolean flag to ensure proper decoding. Previously, results were attempted to be mapped onto a primitive type which failed as there's no converter registered for Row to Boolean.
2020-09-21 15:17:45 +02:00
Mark Paluch
f0b30f0ca0 #467 - Migrate tests to JUnit 5.
Migrate also ExternalDatabase from JUnit rule to BeforeAllCallback and RegisterExtension.
2020-09-21 14:42:05 +02:00
Mark Paluch
68c2304b73 #413 - Disable test used as documentation include. 2020-09-18 09:20:42 +02:00
Mark Paluch
c23485d90e #413 - Introduce constructor to R2dbcEntityTemplate accepting ConnectionFactory.
This is a short-cut constructor that allows for simpler creation of the Template API.
2020-09-17 17:52:18 +02:00
Mark Paluch
ce57b25cd0 #413 - Refine reference documentation after Spring R2DBC migration. 2020-09-17 11:14:01 +02:00
Mark Paluch
1c378bba6f #431 - Prepare 1.2 RC1 (2020.0.0). 2020-09-16 13:57:08 +02:00
Mark Paluch
f26b06bd48 #431 - Updated changelog. 2020-09-16 13:56:59 +02:00
Mark Paluch
2f9cb8d538 #432 - Updated changelog. 2020-09-16 12:16:29 +02:00
Mark Paluch
4506fb67ca #453 - Introduce converters to consume Postgres Json and convert these to String/byte[].
We now ship converters for Postgres' Json data type to map JSON to String and to byte[] for easier and safe consumption.
2020-09-10 09:21:15 +02:00
Mark Paluch
b720249dac #454 - Adapt to changed array assertions in AssertJ. 2020-09-09 15:51:54 +02:00
Mark Paluch
6c3ba72253 #452 - Introduce factory method for StatementMapper. 2020-09-09 13:13:46 +02:00
Mark Paluch
0868f2aaef #423 - Add r2dbc-postgresql Geotypes to simple types.
R2DBC Postgres Geo-types are now considered simple types that are passed-thru to the driver without further mapping. Types such as io.r2dbc.postgresql.codec.Circle or io.r2dbc.postgresql.codec.Box can be used directly in domain models and as bind parameters.
2020-09-09 11:40:04 +02:00
Mark Paluch
7d3bd1f30a #444 - Initialize primitive Id properties upon INSERT.
We now propagate auto-generated Id values to primitive Id properties if the value in the domain model is zero. This happens in addition to non-primitive values being null to ensure that generated values end up in the domain model.
2020-09-09 11:22:48 +02:00
Jay Bryant
158a684c02 #392 - Wording changes.
Removed the language of oppression and violence
and replaced it with more neutral language.

Note that problematic words in the code have
to remain in the docs until the code changes.
2020-09-09 11:00:55 +02:00
hirakida
468ade2ac2 #442 - Fix method name in reference docs. 2020-09-09 10:54:53 +02:00
Mark Paluch
43d5d9d827 #451 - Initialize version for versioned entities after BeforeConvert callback.
We now initialize/increment the version of versioned entities (optimistic locking) after running the BeforeConvert callback. BeforeConvert callbacks may contain features such as auditing and if the auditing callback issues a isNew check, then the version would be already populated which leads to the auditing callback considering the entity not new anymore leaving the created date empty.
2020-09-09 09:25:21 +02:00
Mark Paluch
f0732a5388 #450 - Polishing.
Document version annotation.
2020-09-08 10:43:30 +02:00