We now support explicit field encryption using mapped entities through the `@ExplicitEncrypted` annotation.
class Person {
ObjectId id;
@ExplicitEncrypted(algorithm = AEAD_AES_256_CBC_HMAC_SHA_512-Deterministic, altKeyName = "my-secret-key")
String socialSecurityNumber;
}
Encryption is applied transparently to all mapped entities leveraging the existing converter infrastructure.
Original pull request: #4302Closes: #4284
This commit makes sure to read query hints and apply them to the MongoDB UpdateOptions when running an update via Reactive-/MongoTemplate.
Original pull request: #4311Closes: #3218
This commit introduces AggregationExpressionCriteria to be used along with Query to run an $expr operator within the find query.
query(whereExpr(valueOf("spent").greaterThan("budget")))
Closes: #2750
Original pull request: #4316.
This commit fixes a regression that prevented native org.bson.Document to serve as source for a findAndReplaceOperation.
Closes: #4300
Original Pull Request: #4310
Implement ReadConcernAware and ReadPreferenceAware for NearQuery and make sure those get applied when working with the template API.
Original Pull Request: #4288
Reuse Let from VariableOperators.
Limit API exposure and favor builders.
Update nullability constraints and assertions.
Update integration tests.
Add unit tests.
Original Pull Request: #4272
This commit adds missing reflection configuration for Querydsl integration. We now also make sure to call the queryMixing getter instead of reading the field via reflection.
Closes#4244
Original pull request: #4245
We now use the springDocsUrl attribute provided via spring-projects/spring-data-build#1895 to resolve links to framework documentation.
Original Pull Request: #4267
In some cases the users domain model may hold references to spring data or MongoDB specific types which should not be included in the reflection configuration as they are part of the static runtime hints configuration.
Closes#4248
Original pull request: #4249