UpdateBuilder
Builder for update operations.
Attributes
- Graph
- Supertypes
- class Objecttrait Matchableclass Any
Members list
Value members
Abstract methods
the flag to bypass document validation during the operation
the flag to bypass document validation during the operation
Attributes
the maximum number of document(s) per bulk
the maximum number of document(s) per bulk
Attributes
Returns an update builder with the given maxBulkSize
.
Returns an update builder with the given maxBulkSize
.
Attributes
the writer concern to be used
Concrete methods
Prepares an UpdateElement
Prepares an UpdateElement
Attributes
Prepares an UpdateElement
Prepares an UpdateElement
Attributes
Prepares an UpdateElement
Prepares an UpdateElement
Attributes
Updates many documents, according the ordered behaviour.
Updates many documents, according the ordered behaviour.
import scala.concurrent.{ ExecutionContext, Future }
import reactivemongo.api.bson.BSONDocument
import reactivemongo.api.bson.collection.BSONCollection
def updateMany(
coll: BSONCollection,
first: BSONDocument,
docs: Iterable[BSONDocument])(implicit ec: ExecutionContext) = {
val update = coll.update(ordered = true)
val elements = Future.sequence(docs.map { doc =>
update.element(
q = BSONDocument("update" -> "selector"),
u = BSONDocument(f"$$set" -> doc),
upsert = true,
multi = false)
})
for {
_ <- update.element(
q = BSONDocument("update" -> "selector"),
u = BSONDocument(f"$$set" -> first),
upsert = true,
multi = false)
ups <- elements
res <- update.many(ups) // Future[MultiBulkWriteResult]
} yield res
}
Attributes
Updates many documents, according the ordered behaviour.
Updates many documents, according the ordered behaviour.
import scala.concurrent.{ ExecutionContext, Future }
import reactivemongo.api.bson.BSONDocument
import reactivemongo.api.bson.collection.BSONCollection
def updateMany(
coll: BSONCollection,
docs: Iterable[BSONDocument])(implicit ec: ExecutionContext) = {
val update = coll.update(ordered = true)
val elements = Future.sequence(docs.map { doc =>
update.element(
q = BSONDocument("update" -> "selector"),
u = BSONDocument(f"$$set" -> doc),
upsert = true,
multi = false)
})
elements.flatMap { ups =>
update.many(ups) // Future[MultiBulkWriteResult]
}
}
Attributes
Performs a single update (see UpdateElement).
Performs a single update (see UpdateElement).
import scala.concurrent.ExecutionContext.Implicits.global
import reactivemongo.api.bson.BSONDocument
import reactivemongo.api.bson.collection.BSONCollection
def updateOne(coll: BSONCollection, q: BSONDocument, u: BSONDocument) =
coll.update.one(q, u, upsert = true)
Attributes
Performs a single update (see UpdateElement).
Performs a single update (see UpdateElement).
Performs a single update (see UpdateElement) with a aggregation pipeline.
Performs a single update (see UpdateElement) with a aggregation pipeline.
Attributes
- Since:
MongoDB 4.2
Deprecated methods
'''EXPERIMENTAL:''' Prepares an UpdateElement with an update pipeline.
'''EXPERIMENTAL:''' Prepares an UpdateElement with an update pipeline.
Attributes
- Since:
MongoDB 4.2
- Deprecated
- true
'''EXPERIMENTAL:''' Prepares an UpdateElement with an update pipeline.
'''EXPERIMENTAL:''' Prepares an UpdateElement with an update pipeline.
Attributes
- Since:
MongoDB 4.2
- Deprecated
- true
'''EXPERIMENTAL:''' Performs a single update (see UpdateElement) with a aggregation pipeline.
'''EXPERIMENTAL:''' Performs a single update (see UpdateElement) with a aggregation pipeline.
Attributes
- Since:
MongoDB 4.2
- Deprecated
- true
'''EXPERIMENTAL:''' Performs a single update (see UpdateElement) with a aggregation pipeline.
'''EXPERIMENTAL:''' Performs a single update (see UpdateElement) with a aggregation pipeline.
Attributes
- Since:
MongoDB 4.2
- Deprecated
- true
'''EXPERIMENTAL:''' Performs a single update (see UpdateElement) with a aggregation pipeline.
'''EXPERIMENTAL:''' Performs a single update (see UpdateElement) with a aggregation pipeline.
Attributes
- Since:
MongoDB 4.2
- Deprecated
- true
Attributes
- Deprecated
- true