Commit Graph

381 Commits

Author SHA1 Message Date
Mark Paluch
7ab3cd83c8 DATAJDBC-388 - After release cleanups. 2019-08-05 15:53:02 +02:00
Mark Paluch
2f28153471 DATAJDBC-388 - Prepare next development iteration. 2019-08-05 15:53:01 +02:00
Mark Paluch
10ae98a572 DATAJDBC-388 - Release version 1.1 RC2 (Moore). 2019-08-05 15:35:35 +02:00
Mark Paluch
09318cc0f1 DATAJDBC-388 - Prepare 1.1 RC2 (Moore). 2019-08-05 15:35:05 +02:00
Mark Paluch
096ebafcb1 DATAJDBC-388 - Updated changelog. 2019-08-05 15:34:54 +02:00
Mark Paluch
13cbc54c3b DATAJDBC-387 - Updated changelog. 2019-08-05 11:34:26 +02:00
Oliver Drotbohm
5a8abe73e6 DATAJDBC-399 - Performance improvements in metadata lookups.
Avoid Stream usage in favor of a simple for loop in event triggering in JdbcAggregateTemplate. Tweaked JdbcMappingContext to verify the presence of parameter names on metadata creation. Avoid the re-resolution of the column name for a property by caching the resolved column name. This significantly improves performance as it avoids repeated parsing and concatenation of strings. Added caching to PersistentPropertyPathExtension.
2019-07-30 17:15:53 +02:00
Mark Paluch
1fb404a84e DATAJDBC-400 - Polishing.
Add version since which deprecations are in place. Inline variables.

Original pull request: #164.
2019-07-29 14:15:12 +02:00
Jens Schauder
af3b9f8adb DATAJDBC-400 - Deprecated Identifier for those events that also have an entity.
Retrieval of the Identifier has been shown to cost significant performance.

Original pull request: #164.
2019-07-29 14:15:06 +02:00
Jens Schauder
2289195e8a DATAJDBC-400 - Remove Identifier from callbacks.
Retrieval of the Identifier has been shown to cost significant performance.

Original pull request: #164.
2019-07-29 14:14:37 +02:00
Mark Paluch
4ab69a10f7 DATAJDBC-398 - Polishing.
Convert space indent to tabs.

Original pull request: #163.
2019-07-26 12:35:07 +02:00
Jens Schauder
5e8161dbf3 DATAJDBC-398 - SimpleJdbcRepository methods are now transactional.
Original pull request: #163.
2019-07-26 12:34:56 +02:00
Greg Turnquist
d75058ab23 DATAJDBC-376 - Polishing. 2019-07-19 11:53:22 -05:00
Greg Turnquist
6ba1863846 DATAJDBC-376 - Publish documentation for main branch. 2019-07-19 11:53:02 -05:00
Jens Schauder
1d91d839b7 DATAJDBC-393 - Added missing create table script for integration tests. 2019-07-17 10:23:09 +02:00
Jens Schauder
14d79025b5 DATAJDBC-394 - Don't use AS for table aliases.
The AS keyword for table aliases is optional for all databases that support it.
It is not supported by Oracle.
Thus not using it makes the generated SQL compatible to more databases.

Original pull request: #162.
2019-07-17 08:47:00 +02:00
Mark Paluch
257dd7d5d4 DATAJDBC-393 - Polishing.
Accept AggregateChange in BeforeSave and BeforeDelete callbacks. Add Javadoc. Fix generics usage in RelationalAuditingCallback. Align documentation for consistent entity callback documentation.

Add overloaded JdbcAggregateTemplate constructor to directly configure EntityCallbacks.

Original pull request: #161.
2019-07-16 13:09:08 +02:00
Jens Schauder
1a9612c64f DATAJDBC-393 - EntityCallback support.
An `EntityCallback` works very similar to an `ApplicationEvent` but returns a potentially changed instance.
The returned instance will be used in further processing which enables proper event handling for immutable classes.

Auditing was changed to use a callback making it work also with immutable objects.

Original pull request: #161.
2019-07-16 13:08:44 +02:00
Mark Paluch
d143d8fe71 DATAJDBC-390 - Polishing.
Slightly tweak Javadoc.

Original pull request: #159.
2019-07-15 11:39:06 +02:00
Jens Schauder
7089e077d5 DATAJDBC-390 - Add ordering to RelationalAuditingEventListener to run before other listeners without explicitly specified order.
When an event listener is used to set an id before saving it, this ensures the auditing happens before setting the id.
If this is not ensured the auditing listener doesn't consider the entity as new and doesn't set created date and created by user.

Original pull request: #159.
2019-07-15 11:35:53 +02:00
Oliver Drotbohm
c1e460bd9f DATAJDBC-395 - Added dedicated configuration class for MyBatis integration.
We now ship MyBatisJdbcConfiguration as an alternative to (Abstract)JdbcConfiguration to tweak the DataAccessStrategy bean registered to create one that tries MyBatis mappings first but still delegates to the default one.
2019-07-12 16:47:30 +02:00
Oliver Drotbohm
0d20e4b7b2 DATAJDBC-395 - Overhaul of AbstractJdbcConfiguration.
We now declare DataAccessStrategy as bean again as using a custom default caused the lazy resolution of a RelationResolver to break. Changed the signatures to avoid cross method invocations and allow us to declare the class to not need proxying.

Added integration tests to make sure the components that should be registered are actually registered and the configuration class is useable in the first place. With that in place, the broken cycle would've been caught immediately.
2019-07-12 16:30:24 +02:00
Jens Schauder
fb07912274 DATAJDBC-395 - Polishing.
Avoid line breaks in parameter lists.

Original pull request: #160.
2019-07-11 10:45:10 +02:00
Jens Schauder
b7ee1bbbb0 DATAJDBC-395 - AbstractJdbcConfiguration no longer registers a bean of type DataAccessStrategy.
This avoids having multiple beans of that type in an ApplicationContext when a custom DataAccessStrategy needs to be provided.

Original pull request: #160.
2019-07-11 10:44:46 +02:00
Mark Paluch
275f1a13b9 DATAJDBC-391 - Fix typo. 2019-07-10 09:48:29 +02:00
Mark Paluch
51aa4c896e DATAJDBC-376 - Cleanup release profile.
Reuse inherited configuration from parent pom.
2019-07-09 11:19:19 +02:00
Mark Paluch
938a52cb33 DATAJDBC-391 - Revise readme for a consistent structure. 2019-07-09 11:19:19 +02:00
Greg Turnquist
de555a87eb DATAJDBC-376 - Use parent 'artifactory' profile for snapshot releases. 2019-07-03 16:47:35 -05:00
Greg Turnquist
ee24f92e1d DATAJDBC-376 - Only build main branch for an upstream trigger. 2019-06-28 18:59:39 -05:00
Greg Turnquist
6453a441fe DATAJDBC-376 - Set user.name and user.home for CI jobs. 2019-06-24 16:27:52 -05:00
Jens Schauder
49b71fe366 DATAJDBC-383 - Changing Mybatis documentation link to https. 2019-06-18 14:12:27 +02:00
Jens Schauder
51b3a8cb11 DATAJDBC-383 - preliminary fix for not using http for MyBatis DTDs.
Currently there seems to be now well maintained https resource for MyBatis DTDs.
We therefore use the tagged sources directly for now.

See also: https://github.com/mybatis/mybatis-3/issues/1559
2019-06-18 11:01:35 +02:00
Christoph Strobl
da9d81374a DATAJDBC-360 - After release cleanups. 2019-06-14 15:12:52 +02:00
Christoph Strobl
c6b1894eed DATAJDBC-360 - Prepare next development iteration. 2019-06-14 15:12:51 +02:00
Christoph Strobl
2d2264048b DATAJDBC-360 - Release version 1.1 RC1 (Moore). 2019-06-14 14:44:25 +02:00
Christoph Strobl
751cbb5102 DATAJDBC-360 - Prepare 1.1 RC1 (Moore). 2019-06-14 14:43:17 +02:00
Christoph Strobl
f51d4c2161 DATAJDBC-360 - Updated changelog. 2019-06-14 14:43:07 +02:00
Christoph Strobl
c7b85f8645 DATAJDBC-372 - Updated changelog. 2019-06-14 13:27:13 +02:00
Christoph Strobl
b65f866fd5 DATAJDBC-384 - Polishing.
Update nullable annotations.

Original Pull Request: #157
2019-06-13 13:43:23 +02:00
Jens Schauder
bd03ef83d6 DATAJDBC-384 - Fixed MyBatisDataAccessStrategy.findAllByPath.
findAllByPath now falls back to the older findAllByProperty for better backward compatibility.
Also the path is included in the query name used for MyBatis.

Original Pull Request: #157
2019-06-13 13:42:58 +02:00
Christoph Strobl
3524d7bacf DATAJDBC-378 - Polishing
Move non integration tests to separate class.

Original Pull Request: #155
2019-06-13 10:32:58 +02:00
Jens Schauder
619396357a DATAJDBC-378 - Proper handling of null and empty collections in JdbcAggregateTemplate.
Original Pull Request: #155
2019-06-13 10:03:59 +02:00
Greg Turnquist
d701b575e6 DATAJDBC-376 - Polishing. 2019-06-11 20:08:23 -05:00
Greg Turnquist
9effc3a68f DATAJDBC-376 - Polishing. 2019-06-11 20:07:36 -05:00
Greg Turnquist
77ee9cddd8 DATAJDBC-376 - Polishing. 2019-06-11 19:54:11 -05:00
Greg Turnquist
0baba7ffe9 DATAJDBC-376 - Introduce Jenkins. 2019-06-11 19:49:33 -05:00
Mark Paluch
c5344e31a9 DATAJDBC-382 - Create security policy readme. 2019-05-31 15:45:00 +02:00
Mark Paluch
bb70b89211 DATAJDBC-377 - Use testcontainers version property.
We now use the version property from Spring Data Build and import testcontainers-bom.
2019-05-22 14:57:46 +02:00
Jens Schauder
ebe76a0c7f DATAJDBC-374 - Polishing.
Clarified the effects of collections on nullable embedded entities.

Original pull request: #154.
2019-05-22 12:49:17 +02:00
Christoph Strobl
55a3f9c372 DATAJDBC-374 - Introduce shortcuts for Embedded#onEmpty(…)
@Embedded.Nullable & @Embedded.Empty offer shortcuts for @Embedded(onEmpty = USE_NULL) and @Embedded(onEmpty = USE_EMPTY) to reduce verbositility and simultaneously set JSR-305 @javax.annotation.Nonnull accordingly.

    @Embedded.Nullable
    EmbeddedEntity embeddedEntity;

Original pull request: #154.
2019-05-22 12:47:24 +02:00