diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperation.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperation.java index e0dd4e380..df89e71c4 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperation.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperation.java @@ -89,8 +89,7 @@ public interface ExecutableUpdateOperation { /** * Trigger replaceOne - * execution by calling one of the terminating methods./** Trigger replace execution by calling one of the terminating - * methods. + * execution by calling one of the terminating methods. * * @author Christoph Strobl * @since 4.2 @@ -99,7 +98,7 @@ public interface ExecutableUpdateOperation { /** * Find first and replace/upsert. - * + * * @return never {@literal null}. */ UpdateResult replaceFirst(); diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperationSupport.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperationSupport.java index fff146926..eeb7dbb55 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperationSupport.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ExecutableUpdateOperationSupport.java @@ -130,7 +130,7 @@ class ExecutableUpdateOperationSupport implements ExecutableUpdateOperation { public TerminatingReplace withOptions(ReplaceOptions options) { FindAndReplaceOptions target = new FindAndReplaceOptions(); - if(options.isUpsert()) { + if (options.isUpsert()) { target.upsert(); } return new ExecutableUpdateSupport<>(template, domainType, query, update, collection, findAndModifyOptions, @@ -188,11 +188,13 @@ class ExecutableUpdateOperationSupport implements ExecutableUpdateOperation { @Override public UpdateResult replaceFirst() { - if(replacement != null) { - return template.replace(query, domainType, replacement, findAndReplaceOptions != null ? findAndReplaceOptions : ReplaceOptions.none(), getCollectionName()); + if (replacement != null) { + return template.replace(query, domainType, replacement, + findAndReplaceOptions != null ? findAndReplaceOptions : ReplaceOptions.none(), getCollectionName()); } - return template.replace(query, domainType, update, findAndReplaceOptions != null ? findAndReplaceOptions : ReplaceOptions.none(), getCollectionName()); + return template.replace(query, domainType, update, + findAndReplaceOptions != null ? findAndReplaceOptions : ReplaceOptions.none(), getCollectionName()); } private UpdateResult doUpdate(boolean multi, boolean upsert) { diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoOperations.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoOperations.java index 0e12b37a7..9bc8410b3 100644 --- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoOperations.java +++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/MongoOperations.java @@ -119,7 +119,7 @@ public interface MongoOperations extends FluentMongoOperations { /** * Execute a MongoDB query and iterate over the query results on a per-document basis with a DocumentCallbackHandler. * - * @param query the query class that specifies the criteria used to find a record and also an optional fields + * @param query the query class that specifies the criteria used to find a document and also an optional fields * specification. Must not be {@literal null}. * @param collectionName name of the collection to retrieve the objects from. * @param dch the handler that will extract results, one document at a time. @@ -225,7 +225,7 @@ public interface MongoOperations extends FluentMongoOperations { *
* Returns a {@link String} that wraps the Mongo DB {@link com.mongodb.client.FindIterable} that needs to be closed.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityType must not be {@literal null}.
* @param
* Returns a {@link Stream} that wraps the Mongo DB {@link com.mongodb.client.FindIterable} that needs to be closed.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityType must not be {@literal null}.
* @param collectionName must not be {@literal null} or empty.
@@ -723,7 +723,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned list.
* @return the converted object.
@@ -739,7 +739,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned list.
* @param collectionName name of the collection to retrieve the objects from.
@@ -753,7 +753,7 @@ public interface MongoOperations extends FluentMongoOperations {
* NOTE: Any additional support for query/field mapping, etc. is not available due to the lack of
* domain type information. Use {@link #exists(Query, Class, String)} to get full type specific support.
*
- * @param query the {@link Query} class that specifies the criteria used to find a record.
+ * @param query the {@link Query} class that specifies the criteria used to find a document.
* @param collectionName name of the collection to check for objects.
* @return {@literal true} if the query yields a result.
*/
@@ -762,7 +762,7 @@ public interface MongoOperations extends FluentMongoOperations {
/**
* Determine result of given {@link Query} contains at least one element.
*
- * @param query the {@link Query} class that specifies the criteria used to find a record.
+ * @param query the {@link Query} class that specifies the criteria used to find a document.
* @param entityClass the parametrized type.
* @return {@literal true} if the query yields a result.
*/
@@ -771,7 +771,7 @@ public interface MongoOperations extends FluentMongoOperations {
/**
* Determine result of given {@link Query} contains at least one element.
*
- * @param query the {@link Query} class that specifies the criteria used to find a record.
+ * @param query the {@link Query} class that specifies the criteria used to find a document.
* @param entityClass the parametrized type. Can be {@literal null}.
* @param collectionName name of the collection to check for objects.
* @return {@literal true} if the query yields a result.
@@ -785,7 +785,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityClass the parametrized type of the returned list. Must not be {@literal null}.
* @return the List of converted objects.
@@ -799,7 +799,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityClass the parametrized type of the returned list. Must not be {@literal null}.
* @param collectionName name of the collection to retrieve the objects from. Must not be {@literal null}.
@@ -820,7 +820,7 @@ public interface MongoOperations extends FluentMongoOperations {
* sort properties} as MongoDB does not support criteria to reconstruct a query result from absent document fields or
* {@code null} values through {@code $gt/$lt} operators.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityType the parametrized type of the returned window.
* @return the converted window.
@@ -845,7 +845,7 @@ public interface MongoOperations extends FluentMongoOperations {
* sort properties} as MongoDB does not support criteria to reconstruct a query result from absent document fields or
* {@code null} values through {@code $gt/$lt} operators.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityType the parametrized type of the returned window.
* @param collectionName name of the collection to retrieve the objects from.
@@ -943,7 +943,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Triggers findAndModify
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param update the {@link UpdateDefinition} to apply on matching documents. Must not be {@literal null}.
* @param entityClass the parametrized type. Must not be {@literal null}.
@@ -959,7 +959,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Triggers findAndModify
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param update the {@link UpdateDefinition} to apply on matching documents. Must not be {@literal null}.
* @param entityClass the parametrized type. Must not be {@literal null}.
@@ -977,7 +977,7 @@ public interface MongoOperations extends FluentMongoOperations {
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query} taking
* {@link FindAndModifyOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification.
* @param update the {@link UpdateDefinition} to apply on matching documents.
* @param options the {@link FindAndModifyOptions} holding additional information.
@@ -997,7 +997,7 @@ public interface MongoOperations extends FluentMongoOperations {
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query} taking
* {@link FindAndModifyOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param update the {@link UpdateDefinition} to apply on matching documents. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -1023,7 +1023,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Options are defaulted to {@link FindAndReplaceOptions#empty()}.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @return the converted object that was updated or {@literal null}, if not found.
@@ -1044,7 +1044,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Options are defaulted to {@link FindAndReplaceOptions#empty()}.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param collectionName the collection to query. Must not be {@literal null}.
@@ -1063,7 +1063,7 @@ public interface MongoOperations extends FluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -1086,7 +1086,7 @@ public interface MongoOperations extends FluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -1109,7 +1109,7 @@ public interface MongoOperations extends FluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -1134,7 +1134,7 @@ public interface MongoOperations extends FluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -1164,7 +1164,7 @@ public interface MongoOperations extends FluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -1189,7 +1189,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned list.
* @return the converted object
@@ -1206,7 +1206,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned list.
* @param collectionName name of the collection to retrieve the objects from.
@@ -1491,7 +1491,7 @@ public interface MongoOperations extends FluentMongoOperations {
* NOTE: {@link Query#getSortObject() sorting} is not supported by {@code db.collection.updateOne}.
* Use {@link #findAndModify(Query, UpdateDefinition, FindAndModifyOptions, Class, String)} instead.
*
- * @param query the query document that specifies the criteria used to select a record to be upserted. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be upserted. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing object. Must not be {@literal null}.
@@ -1514,7 +1514,7 @@ public interface MongoOperations extends FluentMongoOperations {
* NOTE: {@link Query#getSortObject() sorting} is not supported by {@code db.collection.updateOne}.
* Use {@link #findAndModify(Query, UpdateDefinition, FindAndModifyOptions, Class, String)} instead.
*
- * @param query the query document that specifies the criteria used to select a record to be upserted. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be upserted. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing object. Must not be {@literal null}.
@@ -1530,7 +1530,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Performs an upsert. If no document is found that matches the query, a new document is created and inserted by
* combining the query document and the update document.
*
- * @param query the query document that specifies the criteria used to select a record to be upserted. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be upserted. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing object. Must not be {@literal null}.
@@ -1547,7 +1547,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Updates the first object that is found in the collection of the entity class that matches the query document with
* the provided update document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1570,7 +1570,7 @@ public interface MongoOperations extends FluentMongoOperations {
* NOTE: {@link Query#getSortObject() sorting} is not supported by {@code db.collection.updateOne}.
* Use {@link #findAndModify(Query, UpdateDefinition, Class, String)} instead.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1586,7 +1586,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Updates the first object that is found in the specified collection that matches the query document criteria with
* the provided updated document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1603,7 +1603,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Updates all objects that are found in the collection for the entity class that matches the query document criteria
* with the provided updated document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1624,7 +1624,7 @@ public interface MongoOperations extends FluentMongoOperations {
* domain type information. Use {@link #updateMulti(Query, UpdateDefinition, Class, String)} to get full type specific
* support.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1640,7 +1640,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Updates all objects that are found in the collection for the entity class that matches the query document criteria
* with the provided updated document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1673,7 +1673,7 @@ public interface MongoOperations extends FluentMongoOperations {
* acknowledged} remove operation was successful or not.
*
* @param object must not be {@literal null}.
- * @param collectionName name of the collection where the objects will removed, must not be {@literal null} or empty.
+ * @param collectionName name of the collection where the documents will be removed from, must not be {@literal null} or empty.
* @return the {@link DeleteResult} which lets you access the results of the previous delete.
*/
DeleteResult remove(Object object, String collectionName);
@@ -1682,7 +1682,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Remove all documents that match the provided query document criteria from the collection used to store the
* entityClass. The Class parameter is also used to help convert the Id of the object if it is present in the query.
*
- * @param query the query document that specifies the criteria used to remove a record.
+ * @param query the query document that specifies the criteria used to remove a document.
* @param entityClass class that determines the collection to use.
* @return the {@link DeleteResult} which lets you access the results of the previous delete.
* @throws IllegalArgumentException when {@literal query} or {@literal entityClass} is {@literal null}.
@@ -1695,9 +1695,9 @@ public interface MongoOperations extends FluentMongoOperations {
* Remove all documents that match the provided query document criteria from the collection used to store the
* entityClass. The Class parameter is also used to help convert the Id of the object if it is present in the query.
*
- * @param query the query document that specifies the criteria used to remove a record.
+ * @param query the query document that specifies the criteria used to remove a document.
* @param entityClass class of the pojo to be operated on. Can be {@literal null}.
- * @param collectionName name of the collection where the objects will removed, must not be {@literal null} or empty.
+ * @param collectionName name of the collection where the documents will be removed from, must not be {@literal null} or empty.
* @return the {@link DeleteResult} which lets you access the results of the previous delete.
* @throws IllegalArgumentException when {@literal query}, {@literal entityClass} or {@literal collectionName} is
* {@literal null}.
@@ -1710,8 +1710,8 @@ public interface MongoOperations extends FluentMongoOperations {
* NOTE: Any additional support for field mapping is not available due to the lack of domain type
* information. Use {@link #remove(Query, Class, String)} to get full type specific support.
*
- * @param query the query document that specifies the criteria used to remove a record.
- * @param collectionName name of the collection where the objects will removed, must not be {@literal null} or empty.
+ * @param query the query document that specifies the criteria used to remove a document.
+ * @param collectionName name of the collection where the documents will be removed from, must not be {@literal null} or empty.
* @return the {@link DeleteResult} which lets you access the results of the previous delete.
* @throws IllegalArgumentException when {@literal query} or {@literal collectionName} is {@literal null}.
*/
@@ -1723,7 +1723,7 @@ public interface MongoOperations extends FluentMongoOperations {
* information. Use {@link #findAllAndRemove(Query, Class, String)} to get full type specific support.
*
* @param query the query document that specifies the criteria used to find and remove documents.
- * @param collectionName name of the collection where the objects will removed, must not be {@literal null} or empty.
+ * @param collectionName name of the collection where the documents will be removed from, must not be {@literal null} or empty.
* @return the {@link List} converted objects deleted by this operation.
* @since 1.5
*/
@@ -1748,7 +1748,7 @@ public interface MongoOperations extends FluentMongoOperations {
*
* @param query the query document that specifies the criteria used to find and remove documents.
* @param entityClass class of the pojo to be operated on.
- * @param collectionName name of the collection where the objects will removed, must not be {@literal null} or empty.
+ * @param collectionName name of the collection where the documents will be removed from, must not be {@literal null} or empty.
* @return the {@link List} converted objects deleted by this operation.
* @since 1.5
*/
@@ -1760,7 +1760,7 @@ public interface MongoOperations extends FluentMongoOperations {
* The collection name is derived from the {@literal replacement} type.
* Options are defaulted to {@link ReplaceOptions#none()}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1777,7 +1777,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document. Options are defaulted to {@link ReplaceOptions#none()}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1795,7 +1795,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record.The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document.The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1813,7 +1813,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may *
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may *
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1833,7 +1833,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param entityType the type used for mapping the {@link Query} to domain type fields and deriving the collection
@@ -1853,7 +1853,7 @@ public interface MongoOperations extends FluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param entityType the type used for mapping the {@link Query} to domain type fields. Must not be {@literal null}.
diff --git a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ReactiveMongoOperations.java b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ReactiveMongoOperations.java
index 9b2e28562..27adc58fa 100644
--- a/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ReactiveMongoOperations.java
+++ b/spring-data-mongodb/src/main/java/org/springframework/data/mongodb/core/ReactiveMongoOperations.java
@@ -418,7 +418,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned {@link Mono}.
* @return the converted object.
@@ -433,7 +433,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned {@link Mono}.
* @param collectionName name of the collection to retrieve the objects from.
@@ -446,7 +446,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* NOTE: Any additional support for query/field mapping, etc. is not available due to the lack of
* domain type information. Use {@link #exists(Query, Class, String)} to get full type specific support.
*
- * @param query the {@link Query} class that specifies the criteria used to find a record.
+ * @param query the {@link Query} class that specifies the criteria used to find a document.
* @param collectionName name of the collection to check for objects.
* @return {@literal true} if the query yields a result.
*/
@@ -455,7 +455,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
/**
* Determine result of given {@link Query} contains at least one element.
*
- * @param query the {@link Query} class that specifies the criteria used to find a record.
+ * @param query the {@link Query} class that specifies the criteria used to find a document.
* @param entityClass the parametrized type.
* @return {@literal true} if the query yields a result.
*/
@@ -464,7 +464,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
/**
* Determine result of given {@link Query} contains at least one element.
*
- * @param query the {@link Query} class that specifies the criteria used to find a record.
+ * @param query the {@link Query} class that specifies the criteria used to find a document.
* @param entityClass the parametrized type. Can be {@literal null}.
* @param collectionName name of the collection to check for objects.
* @return {@literal true} if the query yields a result.
@@ -479,7 +479,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityClass the parametrized type of the returned {@link Flux}. Must not be {@literal null}.
* @return the {@link Flux} of converted objects.
@@ -493,7 +493,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityClass the parametrized type of the returned {@link Flux}.
* @param collectionName name of the collection to retrieve the objects from. Must not be {@literal null}.
@@ -514,7 +514,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* sort properties} as MongoDB does not support criteria to reconstruct a query result from absent document fields or
* {@code null} values through {@code $gt/$lt} operators.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityType the parametrized type of the returned list.
* @return {@link Mono} emitting the converted window.
@@ -539,7 +539,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* sort properties} as MongoDB does not support criteria to reconstruct a query result from absent document fields or
* {@code null} values through {@code $gt/$lt} operators.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification. Must not be {@literal null}.
* @param entityType the parametrized type of the returned list.
* @param collectionName name of the collection to retrieve the objects from.
@@ -759,7 +759,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Triggers findAndModify
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param update the {@link UpdateDefinition} to apply on matching documents. Must not be {@literal null}.
* @param entityClass the parametrized type. Must not be {@literal null}.
@@ -774,7 +774,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Triggers findAndModify
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param update the {@link UpdateDefinition} to apply on matching documents. Must not be {@literal null}.
* @param entityClass the parametrized type. Must not be {@literal null}.
@@ -791,7 +791,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query} taking
* {@link FindAndModifyOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification.
* @param update the {@link UpdateDefinition} to apply on matching documents.
* @param options the {@link FindAndModifyOptions} holding additional information.
@@ -809,7 +809,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* to apply provided {@link Update} on documents matching {@link Criteria} of given {@link Query} taking
* {@link FindAndModifyOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param update the {@link UpdateDefinition} to apply on matching documents. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -832,7 +832,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Options are defaulted to {@link FindAndReplaceOptions#empty()}.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @return the converted object that was updated or {@link Mono#empty()}, if not found.
@@ -852,7 +852,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Options are defaulted to {@link FindAndReplaceOptions#empty()}.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param collectionName the collection to query. Must not be {@literal null}.
@@ -870,7 +870,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -892,7 +892,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -914,7 +914,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -938,7 +938,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -967,7 +967,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* taking {@link FindAndReplaceOptions} into account.
* NOTE: The replacement entity must not hold an {@literal id}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record and also an optional
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document and also an optional
* fields specification. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
* @param options the {@link FindAndModifyOptions} holding additional information. Must not be {@literal null}.
@@ -992,7 +992,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned {@link Mono}.
* @return the converted object
@@ -1008,7 +1008,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned {@link Mono}.
* @param collectionName name of the collection to retrieve the objects from.
@@ -1370,7 +1370,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* NOTE: {@link Query#getSortObject() sorting} is not supported by {@code db.collection.updateOne}.
* Use {@link #findAndModify(Query, UpdateDefinition, Class)} instead.
*
- * @param query the query document that specifies the criteria used to select a record to be upserted. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be upserted. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing object. Must not be {@literal null}.
@@ -1391,7 +1391,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* domain type information. Use {@link #upsert(Query, UpdateDefinition, Class, String)} to get full type specific
* support.
*
- * @param query the query document that specifies the criteria used to select a record to be upserted. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be upserted. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing object. Must not be {@literal null}.
@@ -1407,7 +1407,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Performs an upsert. If no document is found that matches the query, a new document is created and inserted by
* combining the query document and the update document.
*
- * @param query the query document that specifies the criteria used to select a record to be upserted. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be upserted. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing object. Must not be {@literal null}.
@@ -1426,7 +1426,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* NOTE: {@link Query#getSortObject() sorting} is not supported by {@code db.collection.updateOne}.
* Use {@link #findAndModify(Query, UpdateDefinition, Class)} instead.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1449,7 +1449,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* NOTE: {@link Query#getSortObject() sorting} is not supported by {@code db.collection.updateOne}.
* Use {@link #findAndModify(Query, UpdateDefinition, Class, String)} instead.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1465,7 +1465,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Updates the first object that is found in the specified collection that matches the query document criteria with
* the provided updated document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1482,7 +1482,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Updates all objects that are found in the collection for the entity class that matches the query document criteria
* with the provided updated document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1503,7 +1503,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* domain type information. Use {@link #updateMulti(Query, UpdateDefinition, Class, String)} to get full type specific
* support.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1519,7 +1519,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Updates all objects that are found in the collection for the entity class that matches the query document criteria
* with the provided updated document.
*
- * @param query the query document that specifies the criteria used to select a record to be updated. Must not be
+ * @param query the query document that specifies the criteria used to select a document to be updated. Must not be
* {@literal null}.
* @param update the {@link UpdateDefinition} that contains the updated object or {@code $} operators to manipulate
* the existing. Must not be {@literal null}.
@@ -1546,7 +1546,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Removes the given object from the given collection.
*
* @param object must not be {@literal null}.
- * @param collectionName name of the collection where the objects will removed, must not be {@literal null} or empty.
+ * @param collectionName name of the collection where the documents will be removed from, must not be {@literal null} or empty.
* @return the {@link DeleteResult} which lets you access the results of the previous delete.
*/
Mono
* Options are defaulted to {@link ReplaceOptions#none()}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1662,7 +1662,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document. Options are defaulted to {@link ReplaceOptions#none()}.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1680,7 +1680,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record.The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document.The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1698,7 +1698,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may *
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may *
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param replacement the replacement document. Must not be {@literal null}.
@@ -1718,7 +1718,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param entityType the type used for mapping the {@link Query} to domain type fields and deriving the collection
@@ -1738,7 +1738,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* Replace a single document matching the {@link Criteria} of given {@link Query} with the {@code replacement}
* document taking {@link ReplaceOptions} into account.
*
- * @param query the {@link Query} class that specifies the {@link Criteria} used to find a record. The query may
+ * @param query the {@link Query} class that specifies the {@link Criteria} used to find a document. The query may
* contain an index {@link Query#withHint(String) hint} or the {@link Query#collation(Collation) collation}
* to use. Must not be {@literal null}.
* @param entityType the type used for mapping the {@link Query} to domain type fields. Must not be {@literal null}.
@@ -1761,7 +1761,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned {@link Flux}.
* @return the {@link Flux} of converted objects.
@@ -1780,7 +1780,7 @@ public interface ReactiveMongoOperations extends ReactiveFluentMongoOperations {
* The query is specified as a {@link Query} which can be created either using the {@link BasicQuery} or the more
* feature rich {@link Query}.
*
- * @param query the query class that specifies the criteria used to find a record and also an optional fields
+ * @param query the query class that specifies the criteria used to find a document and also an optional fields
* specification.
* @param entityClass the parametrized type of the returned {@link Flux}.
* @param collectionName name of the collection to retrieve the objects from.
diff --git a/src/main/antora/modules/ROOT/pages/mongodb/template-crud-operations.adoc b/src/main/antora/modules/ROOT/pages/mongodb/template-crud-operations.adoc
index 06b84f0bc..a299be02c 100644
--- a/src/main/antora/modules/ROOT/pages/mongodb/template-crud-operations.adoc
+++ b/src/main/antora/modules/ROOT/pages/mongodb/template-crud-operations.adoc
@@ -481,7 +481,7 @@ WARNING: `upsert` does not support ordering. Please use xref:mongodb/template-cr
[[mongo-template.replace]]
=== Replacing Documents in a Collection
-The various `replace` methods available via `MongoTemplate` allow to override a single matching Document.
+The various `replace` methods available via `MongoTemplate` allow to override the first matching Document.
If no match is found a new one can be upserted (as outlined in the previous section) by providing `ReplaceOptions` with according configuration.
====
@@ -504,7 +504,7 @@ Person tom = new Person("id-123", "Tom", 21) <1>
Query query = Query.query(Criteria.where("firstName").is(tom.getFirstName()));
template.replace(query, tom, ReplaceOptions.replaceOptions().upsert()); <2>
----
-<1> The `_id` value needs to be provided for upsert, otherwise MongoDB will generate an `ObjectId`.
+<1> The `_id` value needs to be present for upsert, otherwise MongoDB will create a new potentially with the domain type incompatible `ObjectId`.
As MongoDB is not aware of your domain type, any `@Field(targetType)` hints are not considered and the resulting `ObjectId` might be not compatible with your domain model.
<2> Use `upsert` to insert a new document if no match is found
====