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()
-
case class
FailoverStrategy(initialDelay: FiniteDuration = FiniteDuration(100, "ms"), retries: Int = 10, delayFactor: (Int) ⇒ Double = FailoverStrategy.defaultFactor) extends Product 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 })
- initialDelay
the initial delay between the first failed attempt and the next one.
- retries
the number of retries to do before giving up.
- delayFactor
a function that takes the current iteration and returns a factor to be applied to the initialDelay (default: FailoverStrategy.defaultFactor; see FailoverStrategy.FactorFun)
- 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.
-
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