package api
- Alphabetic
- By Inheritance
- api
- PackageCompat
- LowPriorityPackage
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
class
AsyncDriver extends Driver
The asynchronous driver (see MongoConnection).
The asynchronous driver (see MongoConnection).
import scala.concurrent.Future import reactivemongo.api.{ AsyncDriver, MongoConnection } val driver = AsyncDriver() val connection: Future[MongoConnection] = driver.connect("mongodb://node:27017")
-
sealed
trait
AuthenticationMode extends AnyRef
The mode/mechanism of authentication
-
final
class
Collation extends AnyRef
Represents a collection, view, index or operation specific collation.
Represents a collection, view, index or operation specific collation.
import reactivemongo.api.Collation val collation = new Collation( locale = "en-US", caseLevel = None, caseFirst = None, strength = Some(Collation.PrimaryStrength), numericOrdering = None, alternate = None, maxVariable = None, backwards = None)
-
trait
Collection extends AnyRef
A MongoDB Collection, resolved from a reactivemongo.api.DefaultDB.
A MongoDB Collection, resolved from a reactivemongo.api.DefaultDB.
You should consider the generic API (reactivemongo.api.collections.GenericCollection).
-
trait
CollectionProducer[+C <: Collection] extends AnyRef
A Producer of Collection implementation.
A Producer of Collection implementation.
This is used to get an implementation implicitly when getting a reference of a Collection.
-
trait
Cursor[T] extends CursorCompatAPI[T]
Cursor over results from MongoDB.
Cursor over results from MongoDB.
import scala.concurrent.{ ExecutionContext, Future } import reactivemongo.api.Cursor import reactivemongo.api.bson.{ BSONDocument, Macros } import reactivemongo.api.bson.collection.BSONCollection case class User(name: String, pass: String) implicit val handler = Macros.reader[User] def findUsers(coll: BSONCollection)( implicit ec: ExecutionContext): Future[List[User]] = coll.find(BSONDocument("enabled" -> true)). cursor[User](). // obtain cursor for User results collect[List]( maxDocs = 10, err = Cursor.FailOnError[List[User]]())
- T
the type parsed from each result document
-
trait
CursorCompatAPI[T] extends AnyRef
Cursor over results from MongoDB.
Cursor over results from MongoDB.
- T
the type parsed from each result document
-
trait
CursorFlattener[C[_] <: Cursor[_]] extends AnyRef
Flattening strategy for cursor.
Flattening strategy for cursor.
import scala.concurrent.Future import reactivemongo.api.{ Cursor, CursorFlattener, FlattenedCursor } trait FooCursor[T] extends Cursor[T] { def foo: String } implicit def fooFlattener = new CursorFlattener[FooCursor] { def flatten[T](future: Future[FooCursor[T]]): FooCursor[T] = new FlattenedCursor[T](future) with FooCursor[T] { def foo = "Flattened" } }
-
trait
CursorOps[T] extends AnyRef
Internal cursor operations.
- final class CursorOptions extends AnyVal
-
trait
CursorProducer[T] extends AnyRef
Allows to enrich a base cursor.
-
sealed
trait
DB extends AnyRef
The reference to a MongoDB database, obtained from a reactivemongo.api.MongoConnection.
The reference to a MongoDB database, obtained from a reactivemongo.api.MongoConnection.
You should consider the provided reactivemongo.api.DefaultDB implementation.
import scala.concurrent.ExecutionContext import reactivemongo.api.MongoConnection def foo(connection: MongoConnection)(implicit ec: ExecutionContext) = { val db = connection.database("plugin") val collection = db.map(_("acoll")) }
-
class
DefaultDB extends DB with DBMetaCommands with GenericDB[Pack] with Product with Serializable
The default DB implementation, that mixes in the database traits.
The default DB implementation, that mixes in the database traits.
- Annotations
- @SerialVersionUID()
-
class
FailoverStrategy extends Product3[FiniteDuration, Int, (Int) ⇒ Double] with Serializable
A failover strategy for sending requests.
A failover strategy for sending requests. The default uses 10 retries: 125ms, 250ms, 375ms, 500ms, 625ms, 750ms, 875ms, 1s, 1125ms, 1250ms
import scala.concurrent.duration._ reactivemongo.api.FailoverStrategy( initialDelay = 150.milliseconds, retries = 20, delayFactor = { `try` => `try` * 1.5D })
- class FlattenedCursor[T] extends Cursor[T] with FlattenedCursorCompat[T]
-
class
MongoConnection extends AnyRef
A pool of MongoDB connections, obtained from a reactivemongo.api.MongoDriver.
A pool of MongoDB connections, obtained from a reactivemongo.api.MongoDriver.
Connection here does not mean that there is one open channel to the server: behind the scene, many connections (channels) are open on all the available servers in the replica set.
Example:
import scala.concurrent.ExecutionContext import reactivemongo.api._ def foo(driver: AsyncDriver)(implicit ec: ExecutionContext) = { val con = driver.connect(List("localhost")) val db = con.flatMap(_.database("plugin")) val collection = db.map(_("acoll")) }
-
class
MongoConnectionOptions extends Product with Serializable
Options for MongoConnection (see more documentation).
-
trait
QueryOps extends AnyRef
Operations about query.
-
sealed
trait
ReadConcern extends AnyRef
The Read Concern allows to control the consistency and isolation used to read data from replica sets.
The Read Concern allows to control the consistency and isolation used to read data from replica sets.
import scala.concurrent.ExecutionContext import reactivemongo.api.ReadConcern import reactivemongo.api.bson.BSONDocument import reactivemongo.api.bson.collection.BSONCollection def queryBuilderWithReadConcern(coll: BSONCollection) = coll.find(BSONDocument.empty). readConcern(ReadConcern.Available)
-
sealed
trait
ReadPreference extends AnyRef
MongoDB read preference enables to read from primary or secondaries with a predefined strategy.
MongoDB read preference enables to read from primary or secondaries with a predefined strategy.
import reactivemongo.api.ReadPreference val pref: ReadPreference = ReadPreference.primary
-
trait
WrappedCursor[T] extends Cursor[T] with WrappedCursorCompat[T]
Cursor wrapper, to help to define custom cursor classes.
Cursor wrapper, to help to define custom cursor classes.
- See also
CursorProducer
-
trait
WrappedCursorOps[T] extends CursorOps[T]
Internal cursor operations.
-
sealed
trait
WriteConcern extends AnyRef
The write concern.
The write concern.
import scala.concurrent.ExecutionContext import reactivemongo.api.{ DefaultDB, WriteConcern } import reactivemongo.api.bson.BSONDocument def foo(db: DefaultDB)(implicit ec: ExecutionContext) = db.collection("myColl"). insert(ordered = false, WriteConcern.Acknowledged). one(BSONDocument("foo" -> "bar"))
-
trait
CollectionMetaCommands extends AnyRef
A mixin that provides commands about this Collection itself.
A mixin that provides commands about this Collection itself.
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.8) Internal: will be made private
-
trait
DBMetaCommands extends AnyRef
A mixin that provides commands about this database itself.
A mixin that provides commands about this database itself.
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.8) Internal: will be made private
-
class
Failover[T] extends AnyRef
A helper that sends the given message to the given actor, following a failover strategy.
A helper that sends the given message to the given actor, following a failover strategy. This helper holds a future reference that is completed with a response, after 1 or more attempts (specified in the given strategy). If the all the tryouts configured by the given strategy were unsuccessful, the future reference is completed with a Throwable.
Should not be used directly for most use cases.
- T
Type of the message to send.
- Annotations
- @deprecated
- Deprecated
(Since version 0.17.0) Unused, will be removed
-
class
MongoDriver extends Driver
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.4) Use
reactivemongo.api.AsyncDriver
-
case class
QueryOpts(skipN: Int = 0, batchSizeN: Int = 0, flagsN: Int = 0) extends QueryOps with Product with Serializable
A helper to make the query options.
A helper to make the query options. You may use the methods to set the fields of this class, or set them directly.
- skipN
the number of documents to skip.
- batchSizeN
the upper limit on the number of documents to retrieve per batch (0 for unspecified)
- flagsN
the query flags
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.8) Internal: will be made private
-
type
SerializationPackObject = SerializationPack with Singleton
- Annotations
- @deprecated
- Deprecated
(Since version 0.17.0) Unused, will be removed
Value Members
-
object
AsyncDriver
The driver factory
-
object
ChangeStreams
Change stream utilities.
Change stream utilities.
import scala.concurrent.{ ExecutionContext, Future } import reactivemongo.api.ChangeStreams.FullDocumentStrategy import reactivemongo.api.bson.BSONDocument import reactivemongo.api.bson.collection.BSONCollection def peekNext( coll: BSONCollection, strategy: FullDocumentStrategy)( implicit ec: ExecutionContext): Future[Option[BSONDocument]] = coll.watch[BSONDocument](fullDocumentStrategy = Some(strategy)). cursor.headOption def doIt(coll: BSONCollection)( implicit ec: ExecutionContext): Future[Unit] = for { _ <- peekNext(coll, FullDocumentStrategy.Default) _ <- peekNext(coll, FullDocumentStrategy.UpdateLookup) } yield ()
-
object
Collation
Collation utilities.
-
object
Cursor
Cursor companion object
-
object
CursorFlattener
Flatteners helper
- object CursorOps
- object CursorOptions
- object CursorProducer
-
object
FailoverStrategy extends Serializable
FailoverStrategy utilities
- object MongoConnection
-
object
MongoConnectionOptions extends Serializable
MongoConnectionOptions factory.
MongoConnectionOptions factory.
reactivemongo.api.MongoConnectionOptions(nbChannelsPerNode = 10)
- object ReadConcern
-
object
ReadPreference
ReadPreference utilities and factories.
-
object
ScramSha1Authentication extends AuthenticationMode with ScramAuthentication with Product with Serializable
SCRAM-SHA-1 authentication (since MongoDB 3.6)
-
object
ScramSha256Authentication extends AuthenticationMode with ScramAuthentication with Product with Serializable
SCRAM-SHA-256 authentication (see MongoDB 4.0)
- object Version
-
object
WriteConcern
WriteConcern utilities.
-
object
X509Authentication extends AuthenticationMode with Product with Serializable
X509 authentication
Deprecated Value Members
-
implicit final
def
toDocument(doc: BSONDocument): BSONDocument
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.0) Use reactivemongo-bson-api
-
implicit final
def
toDocumentHandler[T](implicit h: BSONDocumentHandler[T]): BSONDocumentHandler[T]
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.0) Use reactivemongo-bson-api or use reactivemongo-bson-compat: import reactivemongo.api.bson.compat._
-
implicit
def
toDocumentIteratee[T](it: Iteratee[BSONDocument, T])(implicit ec: ExecutionContext): Iteratee[BSONDocument, T]
- Definition Classes
- PackageCompat
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.0) Use reactivemongo-bson-api
-
implicit
def
toDocumentIteratorIteratee[T](it: Iteratee[Iterator[BSONDocument], T])(implicit ec: ExecutionContext): Iteratee[Iterator[BSONDocument], T]
- Definition Classes
- PackageCompat
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.0) Use reactivemongo-bson-api
-
implicit final
def
toDocumentReader[T](implicit h: BSONDocumentReader[T]): BSONDocumentReader[T]
- Definition Classes
- LowPriorityPackage
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.0) Use reactivemongo-bson-api or use reactivemongo-bson-compat: import reactivemongo.api.bson.compat._
-
implicit final
def
toDocumentWriter[T](implicit h: BSONDocumentWriter[T]): BSONDocumentWriter[T]
- Definition Classes
- LowPriorityPackage
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.0) Use reactivemongo-bson-api or use reactivemongo-bson-compat: import reactivemongo.api.bson.compat._
-
object
CrAuthentication extends AuthenticationMode with Product with Serializable
MongoDB-CR authentication
MongoDB-CR authentication
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.4) Use SCRAM or X509
-
object
DB
- Annotations
- @deprecated
- Deprecated
(Since version 0.16.0) Will be removed
-
object
DefaultCursor
- Annotations
- @deprecated
- Deprecated
(Since version 0.16.0) Internal: will be made private
-
object
DefaultDB extends AbstractFunction3[String, MongoConnection, FailoverStrategy, DefaultDB] with Serializable
- Annotations
- @deprecated
- Deprecated
(Since version 0.16.0) Use DefaultDB class
-
object
Driver
The driver factory
The driver factory
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.4) Internal: will be made private
-
object
Failover2
- Annotations
- @deprecated
- Deprecated
(Since version 0.17.0) Internal: will be made private
-
object
MongoDriver
The driver factory
The driver factory
- Annotations
- @deprecated
- Deprecated
(Since version 0.19.4) Use
reactivemongo.api.AsyncDriver