Mark Paluch
5df9b355eb
#15 - Incorporate review feedback.
...
Improve Javadoc. Rename parameters for more expressiveness. Replace ASCII filtering with filter Function to move actual filtering into dialects.
Original pull request: #19 .
2018-11-21 10:16:14 +01:00
Mark Paluch
9700c3c087
#15 - Add BindMarkers abstraction.
...
We now expose a bind marker API that allows to model a vendor-specific bind marker strategy. The currently supported database systems (Postgres, MsSql) implement indexed respective named strategies that differ in how placeholders and identifiers are generated.
Original pull request: #19 .
2018-11-21 10:16:05 +01:00
Mark Paluch
226c80fb02
#12 - Retain input item order in save(…) methods.
...
We now use concatMap(…) instead of flatMap(…) when saving items to retain output item order.
2018-11-12 15:13:19 +01:00
Mark Paluch
12dc98bcbd
#2 - Polishing.
2018-10-17 11:11:16 +02:00
Mark Paluch
d60d8b04a0
#2 - Switch dependency test to assumption.
2018-10-17 11:11:13 +02:00
Mark Paluch
f223475112
#2 - Adapt to R2DBC API changes.
2018-10-17 11:11:07 +02:00
Mark Paluch
1464df99d4
#2 - Add transactional support.
...
We now support transaction hosting and transaction management via TransactionalDatabaseClient.
TransactionalDatabaseClient databaseClient = TransactionalDatabaseClient.create(connectionFactory);
Flux<Integer> integerFlux = databaseClient.inTransaction(db -> {
return db.execute().sql("INSERT INTO legoset (id, name, manual) VALUES($1, $2, $3)") //
.bind(0, 42055) //
.bind(1, "SCHAUFELRADBAGGER") //
.bindNull("$3") //
.fetch().rowsUpdated();
});
2018-10-17 11:11:06 +02:00
Oliver Gierke
853b3fb449
#2 - Adapt code to API changes.
2018-10-17 11:11:05 +02:00
Jens Schauder
bea95010ae
#2 - Fixes and improves the Dependency test.
...
Now considers the new packages appropriately as well.
consideres the `repository` package to be part of the sub-module `repository.reactive`.
2018-10-17 11:11:03 +02:00
Mark Paluch
831e753658
#2 - Introduce R2DBC exception translation.
...
We now provide exception translation for R2DBC exceptions based on Spring JDBC's SQLErrorCodes.
2018-10-17 11:10:58 +02:00
Mark Paluch
8b006abbe5
#2 - Create relational and r2dbc packages.
...
Move types into relational and r2dbc packages in preparation for a later module separation.
2018-10-17 11:10:54 +02:00
Mark Paluch
f794bfc3ab
#2 - Add R2dbcRepositoryFactory and simple query subsystem.
2018-10-17 11:10:48 +02:00
Mark Paluch
28dee1274f
#2 - Add updates to SimpleR2dbcRepository.
2018-10-17 11:10:45 +02:00
Mark Paluch
590df39bc8
#2 - Add tests for SimpleR2dbcRepository.
2018-10-17 11:10:44 +02:00
Mark Paluch
ee5e3a72e8
#2 - Refactor R2dbc test support code into R2dbcIntegrationTestSupport.
2018-10-17 11:10:42 +02:00
Mark Paluch
4d5d310741
#2 - Add DatabaseClient.select().
...
We now allow typesafe and generic selection of rows.
2018-10-17 11:10:35 +02:00
Mark Paluch
b8375f5a96
#2 - Refactor to functional usage of resources.
...
DatabaseClient now creates functions. The actual invocation/execution takes place from DefaultFetchFunctions (FetchSpec) to keep stateful resources in the scope of the execution. execute()/executeMany() use Flux.usingWhen/Mono.usingWhen to release connections after their usage.
2018-10-17 11:10:30 +02:00
Mark Paluch
c59e9a58eb
#2 - Add DatabaseClient.
...
Provide DatabaseClient and add ExternalDatabase class to provide database connection details/encapsulate a dockerized testcontainer.
2018-10-17 11:10:20 +02:00