Commit Graph

87 Commits

Author SHA1 Message Date
Christoph Strobl
869303f690 Introduce PropertyPath based SortAccessor.
Allow easy configuration of PropertyPath based sorting.

See: #565
2024-03-15 07:15:46 +01:00
Mark Paluch
5593bb6783 Enable KeyValuePartTreeQuery usage for projections.
Closes #563
2024-02-20 11:16:40 +01:00
Mark Paluch
5a73a28e38 Extend license header copyright years to 2024.
See #554
2024-01-02 10:58:55 +01:00
Mark Paluch
0e9554ac0b Move off deprecated API.
See #475
2023-02-15 14:15:46 +01:00
Mark Paluch
d88d4991ef Adopt unit tests to API changes in Commons.
Closes #475
2023-02-15 14:14:15 +01:00
Mark Paluch
9f1c626b3e Extend license header copyright years to 2023.
See #469
2023-01-02 09:53:30 +01:00
Mark Paluch
d51ac8f482 Revise KeySpaceResolver support to primary KeySpace detector source.
A configured KeySpaceResolver is now used primarily to detect the KeySpace to allow further customization of the KeySpace detection strategy.

The concept of a fallback resolver is now deprecated.

Closes #461
2022-12-07 10:42:28 +01:00
Mark Paluch
b05bfc6adf Support adding a key prefix for keyspaces.
We now support prefixing keyspaces by introducing PrefixKeyspaceResolver.

Closes #461
2022-12-07 10:41:14 +01:00
John Blum
efaeeebe39 Remove punctuation in Exception messages.
Closes #442.
2022-06-08 16:59:58 -07:00
Mark Paluch
71105702e8 Provide deleted object to KeyValueTemplate instead of deleting entities by Id.
Closes #438
2022-05-19 11:21:06 +02:00
Christoph Strobl
c0f4189713 Update copyright year to 2022.
See: #419
2022-02-17 12:36:27 +01:00
Jens Schauder
57afa3dbbe Remove Eclipse Non-Javadoc comments.
Closes #409
2022-01-05 15:39:23 +01:00
John Blum
1702f10032 Remove support for Joda Time.
Closes #396.
2022-01-04 14:34:44 +01:00
Mark Paluch
b04df9750e Adopt to Mockito changes.
Closes #408
2022-01-04 14:34:37 +01:00
Mark Paluch
c761ba3c6d Polishing.
Introduce default exists(…) method on KeyValueAdapter to allow for store-specific optimizations of the exists method. Lazily construct a single PartTree instance for reuse.

Refine generics.

See #386
Original pull request: #386.
2021-12-13 10:10:47 +01:00
Christoph Strobl
8c32f0ae6d Add support for executing derived existsBy queries.
Closes: #385
Original pull request: #386.
2021-12-13 10:01:47 +01:00
Mark Paluch
10f63387df Add fluent API support for QuerydslKeyValueRepository.
Also reuse ProjectionFactory from repository factory.

Closes #397.
2021-10-11 13:47:05 +02:00
Mark Paluch
201b957f9e Extract QuerydslPredicateExecutor to its own fragment.
Closes #398
2021-10-11 10:27:09 +02:00
Mark Paluch
6e73b759a7 Move off Google Guava usage in tests.
Closes #378
2021-06-21 09:58:33 +02:00
Mark Paluch
dc5887fdb5 Consider java.math and java.util types as simple types.
Closes #374
2021-04-29 08:31:08 +02:00
Mark Paluch
dab176ab56 Add test to verify Map adapter customization.
See #358.
2021-03-18 15:04:58 +01:00
Mark Paluch
ad5d2268ec Accept target type in KeyValueAdapter.entries(…) and getAllOf(…).
We now accept the target type in both methods to retain type hints so that the underlying adapter implementation can use this type when materializing object instances.

Original Pull Request: #356
2021-03-15 08:09:35 +01:00
Mark Paluch
21556462ab Update copyright year to 2021.
Closes #346.
2021-01-12 11:29:16 +01:00
Mark Paluch
58d0d4d4c6 DATAKV-332 - Migrate tests to JUnit 5. 2020-11-25 14:18:40 +01:00
Mark Paluch
c0ead79916 DATAKV-330 - Polishing.
Reorder methods.

Original pull request: #52.
2020-11-25 14:18:40 +01:00
Jens Schauder
54c7603496 DATAKV-330 - Implement CrudRepository.deleteAllById(Iterable<ID> ids).
Original pull request: #52.
2020-11-25 14:18:32 +01:00
Mark Paluch
bfd5f0152c DATAKV-321 - Adopt to changes in Spring Data Commons.
Update mocks with new behavior.
2020-09-22 16:15:26 +02:00
Mark Paluch
0e92913e8e DATAKV-280 - Enable building with Java 11.
Rely on inherited enforcer plugin configuration. Disable Querydsl tests that cannot be executed with Java9+.
2020-01-09 10:31:53 -06:00
Mark Paluch
c0b4dda728 DATAKV-285 - Update copyright years to 2020. 2020-01-07 08:56:06 +01:00
Mark Paluch
26107e7777 DATAKV-271 - Migrate tests to AssertJ. 2019-07-10 13:31:13 +02:00
Christoph Strobl
a73dda0736 DATAKV-268 - Polishing.
Add test for non annotation driven keyspace resolution and update documentation.

Original Pull Request: #46
2019-06-24 14:34:43 +02:00
Mark Paluch
e9128743b6 DATAKV-268 - Add SpEL support for @KeySpace.
We now support SpEL expressions in @KeySpace that gets evaluated on a per-operation basis.

@KeySpace("#{myProperty}")
class Person {}

Original Pull Request: #46
2019-06-24 14:23:56 +02:00
Christoph Strobl
f5e67237fb DATAKV-212 - Favor SimpleEvaluationContext over StandardEvaluationContext
This allows us to restrict data binding to be read only.
2019-04-26 10:12:45 +02:00
Spring Operator
115731519c DATAKV-253 - URL Cleanup.
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).

# Fixed URLs

## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.

* [ ] http://www.apache.org/licenses/ with 2 occurrences migrated to:
  https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 79 occurrences migrated to:
  https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0) result 200).

Original Pull Request: #45
2019-03-22 18:16:32 +01:00
Oliver Drotbohm
9b44b2dccb DATAKV-251 - Removed off deprecations in Spring Data Commons.
Some additional polishing.

Related ticket: DATACMNS-1496.
2019-03-13 17:13:12 +01:00
Mark Paluch
fbd03cc484 DATAKV-244 - Update copyright years to 2019. 2019-01-02 14:02:26 +01:00
Mark Paluch
4f49fe98f4 DATAKV-225 - Add support for immutable objects.
Add return type to KeyValueOperations.insert/update methods to return potentially changed object instances. Return KeyValueOperations.insert/update method result in SimpleKeyValueRepository.save(…).
2018-07-12 10:42:24 +02:00
Oliver Gierke
1e14c4443b DATAKV-219 - Adapt to SpEL extension API changes in Spring Data Commons.
Related ticket: DATACMNS-1260.
2018-05-15 09:24:48 +02:00
Mark Paluch
6381daacc9 DATAKV-205 - Update copyright years to 2018. 2018-01-08 16:25:58 +01:00
Mark Paluch
83057f1288 DATAKV-197 - Introduce usage of nullable annotations for API validation.
Annotate all packages with Spring Frameworks @NonNullApi and @NonNullFields. Add Spring's @Nullable to methods, parameters and fields that take or produce null values. Adapted using code to make sure the IDE can evaluate the null flow properly. Fix Javadoc in places where an invalid null handling policy was advertised. Strengthened null requirements for types that expose null-instances.

Original Pull Request: #28
2017-09-27 14:21:31 +02:00
Mark Paluch
f0b3fc2b98 DATAKV-192 - Polishing.
Reduce member visibility according type visibility. Adapt to required argument in KeyValueRepository.findAll(Pageable). Replace cast with type to Class.cast(…). Use lombok for for getters/setters in test code. Suppress warnings, formatting.

Original pull request: #26.
2017-08-02 10:15:58 +02:00
Christoph Strobl
0025c03e5a DATAKV-192 - Move codebase to Java8 API.
Make use of stream lambdas in query execution. Remove copy of MetaAnnotationUtils in favor of @AliasFor usage.

Original pull request: #26.
2017-08-02 10:05:11 +02:00
Mark Paluch
14da42ff15 DATAKV-187 - Polishing.
Remove Serializable ID constraints from factory beans. Replace casts with type.cast(…). Convert anonymous inner classes to lambdas. Remove unused code and casts. Simplify test entities by removing Serializable and using lombok. Letter casing, formatting, Javadoc.

Original pull request: #25.
2017-07-21 15:31:59 +02:00
Christoph Strobl
d6ee87ace5 DATAKV-187 - Remove restriction of ID type to be Serializable.
Original pull request: #25.
2017-07-21 15:31:47 +02:00
Christoph Strobl
8f5fa59386 DATAKV-186 - Polishing.
Add missing author information and split test.

Original Pull Request: #24
2017-07-20 10:49:16 +02:00
EugeneNik
c5e0d1a26c DATAKV-186 - SimpleKeyValueRepository.existsById(…) now evaluates findById(…) results properly.
ExistsById now evaluates Optional.isPresent() instead of comparing findById result to null.

Original Pull Request: #24
2017-07-20 10:48:08 +02:00
Christoph Strobl
256bb16dba DATAKV-185 - Polishing.
Fix NPE by now returning an expression that always resolves to true.
2017-07-04 22:02:14 +02:00
Oliver Gierke
97a84c3445 DATAKV-179 - Adapt to API changes in QuerydslPredicateExecutor.findOne(…).
Related ticket: DATACMNS-1059.
2017-05-19 10:48:58 +02:00
Christoph Strobl
aa6e412602 DATAKV-176 - Adapt to API changes in repository interfaces.
We now follow a more consistent naming scheme for the methods in repository that are driven by the following guidelines:

* Methods referring to an identifier now all end on …ById(…).
* Methods taking or returning a collection are named …All(…)

Please see DATACMNS-944 for details.
2017-05-03 17:43:10 +02:00
Mark Paluch
3f21f10d78 DATAKV-170 - Fix KeyValue.getCriteria() method name.
Introduce KeyValue.getCriteria() method and deprecate KeyValue.getCritieria() for later removal. Use fixed method in affected classes.
2017-04-20 13:03:53 +02:00