kmongo / org.litote.kmongo.coroutine / CoroutineCollection / findOneAndUpdate

findOneAndUpdate

suspend fun findOneAndUpdate(filter: Bson, update: Bson, options: FindOneAndUpdateOptions = FindOneAndUpdateOptions()): T? (source)
suspend fun findOneAndUpdate(filter: Bson, update: T, options: FindOneAndUpdateOptions = FindOneAndUpdateOptions()): T? (source)

Atomically find a document and update it.

Parameters

filter - a document describing the query filter, which may not be null.

update - a document describing the update, which may not be null. The update to apply must include only update operators.

options - the options to apply to the operation

Return
the document that was updated. Depending on the value of the returnOriginal property, this will either be the document as it was before the update or as it is after the update. If no documents matched the query filter, then null will be returned

suspend fun findOneAndUpdate(clientSession: ClientSession, filter: Bson, update: Bson, options: FindOneAndUpdateOptions = FindOneAndUpdateOptions()): T? (source)
suspend fun findOneAndUpdate(clientSession: ClientSession, filter: Bson, update: T, options: FindOneAndUpdateOptions = FindOneAndUpdateOptions()): T? (source)

Atomically find a document and update it.

Parameters

clientSession - the client session with which to associate this operation

filter - a document describing the query filter, which may not be null.

update - a document describing the update, which may not be null. The update to apply must include only update operators.

options - the options to apply to the operation

Return
a publisher with a single element the document that was updated. Depending on the value of the returnOriginal property, this will either be the document as it was before the update or as it is after the update. If no documents matched the query filter, then null will be returned

Mongodb
.server.release 3.6

Since
1.7

suspend fun findOneAndUpdate(filter: String, update: String, options: FindOneAndUpdateOptions = FindOneAndUpdateOptions()): T? (source)

Atomically find a document and update it.

Parameters

filter - a document describing the query filter

update - a document describing the update. The update to apply must include only update operators.

options - the options to apply to the operation

Return
the document that was updated. Depending on the value of the returnOriginal property, this will either be the document as it was before the update or as it is after the update. If no documents matched the query filter, then null will be returned

suspend fun findOneAndUpdate(clientSession: ClientSession, filter: String, update: String, options: FindOneAndUpdateOptions = FindOneAndUpdateOptions()): T? (source)

Atomically find a document and update it.

Parameters

clientSession - the client session with which to associate this operation

filter - a document describing the query filter

update - a document describing the update. The update to apply must include only update operators.

options - the options to apply to the operation

Return
the document that was updated. Depending on the value of the returnOriginal property, this will either be the document as it was before the update or as it is after the update. If no documents matched the query filter, then null will be returned