Commit Graph

1821 Commits

Author SHA1 Message Date
Oliver Drotbohm
dd0848b186 DATACMNS-1484 - Fixed too aggressive conversion to Streamable in IterableToStreamableConverter.
We now explicitly check for the target type to be assignable to Streamable to opt into conversion. Without that check, every collection returned from a method declaring Iterable as return type would've been converted into a Streamable by accident.

Related ticket: DATACMNS-1430.
2019-02-21 00:26:44 +01:00
Oliver Drotbohm
d12801a7b0 DATACMNS-1482 - Polishing.
Slightly improved test case.
2019-02-20 14:11:41 +01:00
Jens Schauder
47966451eb DATACMNS-1482 - Polishing.
Fixed some wrong JavaDoc.
2019-02-20 13:55:09 +01:00
Jens Schauder
6dc0ced366 DATACMNS-1482 - Properly convert collections when collection type matches but element type doesn't.
Various fast returns and the use of Class instead of TypeDescriptor led to e.g. List<BigDecimal> not getting properly converted to List<Integer> leading to unexpected ClassCastExceptions when the collection elements where accessed.
2019-02-20 13:55:09 +01:00
Mark Paluch
f65fd511ac DATACMNS-1483 - Polishing.
Statically import Assertions to align assertThat(…) calls with Java code. Use placeholder for MockK version.

Original pull request: #338.
2019-02-20 11:20:29 +01:00
Sebastien Deleuze
ccb9e987e8 DATACMNS-1483 - Migrate Kotlin tests to Mockk.
Original pull request: #338.
2019-02-20 11:20:17 +01:00
Oliver Drotbohm
092e23b08c DATACMNS-1470 - Further adaption of Spring HATEOAS 1.0 API changes. 2019-02-15 11:07:10 +01:00
Mark Paluch
aa39b9ba3a DATACMNS-1451 - Consider more than 16 immutable Kotlin properties in generated PropertyAccessor.
We now consider more than 16 immutable and nullable Kotlin properties per bucket in generated PropertyAccessors.

Previously only the first 16 properties were considered due to truncation of the defaulting bitmap. We used SIPUSH to render the defaulting mask in bytecode which is intended for 16 bit integers (short). Migrating to LDC (runtime constants) preserves the actual constant value of 32 bits and so we're considering now full buckets.
2019-02-13 12:01:22 +01:00
Mark Paluch
04916ed176 DATACMNS-1465 - Updated changelog. 2019-02-13 11:47:53 +01:00
Juhyoung Jeon
42c80aeee6 DATACMNS-1479 - Fix usage of PageRequest in reference documentation.
Previously, the docs still showed the usage of the constructor of PageRequest, which has now been changed to an ….of(…) factory method.
2019-02-12 19:06:11 +01:00
Oliver Drotbohm
cb37bdd994 DATACMNS-1470 - Polishing.
Remove obsolete Spring HATEOAS version property as it's already contained in the build parent.
2019-02-02 00:09:48 +01:00
Greg Turnquist
8c076f921d DATACMNS-1470 - Upgrade to Spring HATEOAS 1.0 API 2019-02-02 00:09:48 +01:00
Oliver Drotbohm
e3d80aa69a DATACMNS-1476 - Polishing. 2019-01-28 11:05:29 +01:00
Oliver Drotbohm
8c75a92b24 DATACMNS-1476 - Added Slice.nextOrLastPageable() and ….previousOrFirstPageable().
We now expose methods that allow to traverse the Pageables but make sure we stay within the result bounds.

Related ticket: DATACMNS-1475.
2019-01-28 11:05:29 +01:00
Oliver Drotbohm
b5972257af DATACMNS-1475 - Fixed Javadoc of Slice.nextPageable() and ….previousPageable().
Documented Slice.nextPageable() and ….previousPageable() to return Pageable.unpaged() instead of null.

Follow-up ticket: DATACMNS-1476.
2019-01-28 11:05:17 +01:00
Christoph Strobl
0c1811946d DATACMNS-1081 - Polishing.
Update Javadoc.

Original Pull Request: #331
2019-01-23 10:24:43 +01:00
Mark Paluch
73eb4ca928 DATACMNS-1081 - Add ReactiveQuerydslPredicateExecutor.
We now ship with a common interface for reactive repositories that want to support Querydsl.

Original Pull Request: #331
2019-01-23 10:23:34 +01:00
Oliver Drotbohm
242971f794 DATACMNS-1471 - Upgrade to Vavr 0.10. 2019-01-21 12:53:09 +01:00
Oliver Drotbohm
1b0f9b8c62 DATACMNS-1439 - Polishing.
Extended copyright years. More reasonable defaults in the mock implementation of ImplementationDetectionConfiguration in case someone might want to reuse it in other test cases.

Original pull request: #325.
2019-01-15 12:57:18 +01:00
Mark Paluch
c755c71a36 DATACMNS-1439 - Polishing.
Reformat, remove trailing whitespaces.

Original pull request: #325.
2019-01-15 12:57:18 +01:00
Mark Paluch
9fe35a24c9 DATACMNS-1439 - Use Java Beans decapitalization for default repository implementation bean names.
We now use Java Beans Introspector during default bean name derivation from class names. Previously, we used String.decapitalize(…) which decapitalizes always the first character. Java Beans do not decapitalize upper case sequences so a class name com.acme.UDPRepository translates to a bean name with UDPRepository instead of uDPRepository.

Original pull request: #325.
2019-01-15 12:57:18 +01:00
Oliver Drotbohm
fe1ccd50be DATACMNS-1466 - Polishing. 2019-01-11 11:48:26 +01:00
Oliver Drotbohm
e0c08e64e8 DATACMNS-1466 - Fixed potential ArrayIndexOutOfBoundsException in DefaultPersistentPropertyPath.
Introduced explicit content checks in ….getLeafProperty() and ….getBaseProperty().
2019-01-11 11:48:23 +01:00
Mark Paluch
92848cd178 DATACMNS-1426 - Updated changelog. 2019-01-10 14:15:38 +01:00
Mark Paluch
53ec026484 DATACMNS-1425 - Updated changelog. 2019-01-10 12:26:31 +01:00
Mark Paluch
28dae00203 DATACMNS-1424 - Updated changelog. 2019-01-10 11:01:17 +01:00
Oliver Drotbohm
a68c1a8c4a DATACMNS-1460 - Upgrade to Vavr 0.9.3. 2019-01-07 10:01:27 +01:00
Mark Paluch
1969f4bcdc DATACMNS-1459 - Update copyright years to 2019. 2019-01-02 12:12:19 +01:00
Oliver Drotbohm
0877ca8e11 DATACMNS-1456 - Polishing. 2018-12-21 15:17:51 +01:00
Oliver Drotbohm
135272ec3e DATACMNS-1456 - ExtensionAwareEvaluationContextProvider now uses a ConcurrentHashMap as cache. 2018-12-21 15:17:42 +01:00
Oliver Drotbohm
566e6a3258 DATACMNS-1455 - HateoasPageableHandlerMethodArgumentResolver handles Pageable.unpaged() coprrectly.
Pageable.unpaged() is now effectively handled like a null value given in the 1.x branch.
2018-12-21 09:55:11 +01:00
Oliver Drotbohm
bb44322b3a DATACMNS-1453 - Polishing.
Renamed test methods and made use of AssertJ assertions to verify exceptions being thrown.

Original pull request: #328.
2018-12-20 15:53:20 +01:00
Francisco Soler
789099f6b9 DATACMNS-1453 - Fixed wrong assertion in AuditingBeanDefinitionRegistrarSupport.
Original pull request: #328.
2018-12-20 15:52:06 +01:00
Oliver Drotbohm
d8705c1cca DATACMNS-1448 - Repositories now favors primary repositories.
If multiple repositories pointing to a single domain type are found we now favor the one registered as primary bean definition. This allows allows reliable disambiguation on which repository is supposed to be used for generic repository interactions.

Related tickets: DATAREST-923.
2018-12-12 22:33:02 +01:00
Oliver Drotbohm
97390a1eef DATACMNS-1447 - Streamable now exposes Collectors.
Added Streamable.toStreamable() and ….toStreamable(Collector) to allow the creation of a Streamable from streams wither using a default List-based intermediate collector (former) or providing an explicit one (latter).
2018-12-12 11:26:15 +01:00
Christoph Strobl
daaa16f195 DATACMNS-1441 - After release cleanups. 2018-12-11 11:07:52 +01:00
Christoph Strobl
fb32ef83d1 DATACMNS-1441 - Prepare next development iteration. 2018-12-11 11:07:51 +01:00
Christoph Strobl
df066475de DATACMNS-1441 - Release version 2.2 M1 (Moore). 2018-12-11 10:53:53 +01:00
Christoph Strobl
8021dc35ba DATACMNS-1441 - Prepare 2.2 M1 (Moore). 2018-12-11 10:53:11 +01:00
Christoph Strobl
250d396a8f DATACMNS-1441 - Updated changelog. 2018-12-11 10:53:07 +01:00
Oliver Drotbohm
0731b72ea5 DATACMNS-1444 - Polishing.
Removed references to Serializable in repository interface declarations. Reformatting to waste less space with lines only containing ellipsis.
2018-12-11 10:01:16 +01:00
Oliver Drotbohm
defbff4bea DATACMNS-1444 - Restructured query method documentation.
Moved collection return type and nullability handling to query method sections.
2018-12-11 09:41:06 +01:00
Oliver Drotbohm
638e9569cb DATACMNS-1444 - Added documentation on Streamable and collection return types.
Includes documentation of Vavr return types.
2018-12-11 09:40:21 +01:00
Oliver Drotbohm
f2967a919e DATACMNS-1443 - Fixed Querydsl web data binding for blank strings.
We now use StringUtils.hasLength(…) in the check whether to drop request elements from binding instead of ….hasText(…) as the latter drops blank strings so that's impossible to search for properties that contain a blank.
2018-12-10 16:55:26 +01:00
Mark Paluch
901d8b60b9 DATACMNS-1442 - Simplify reference documentation setup. 2018-12-10 10:05:59 +01:00
Oliver Drotbohm
4537c11eba DATACMNS-1440 - Added converters to parse LocalDate(Time) and Instant from their toString() representation. 2018-12-08 12:28:00 +01:00
Oliver Drotbohm
b3879a2f4f DATACMNS-1346 - Polishing.
License headers, Javadoc, @since tags.

Original pull request: #299.
2018-12-07 15:47:11 +01:00
Sebastien Deleuze
9554185a9e DATACMNS-1346 - Add a findByIdOrNull(…) extension to CrudRepository.
In Kotlin, it is idiomatic to deal with return value that could have or not a result with nullable types since they are natively supported by the language. This commit adds CrudRepository.findByIdOrNull(…) variant to CrudRepository#findById that returns T? instead of Optional<T>.

Original pull request: #299.
2018-12-07 15:45:54 +01:00
Oliver Drotbohm
e6213135e2 DATACMNS-1438 - Integration test showing that auditing is working in general. 2018-12-06 10:35:49 +01:00
Oliver Drotbohm
75c9ab0a63 DATACMNS-1430 - Tweaked TypeDiscoverer to consider subtypes of Streamable collection like. 2018-12-04 15:43:54 +01:00