case class MongoClient(wrapped: com.mongodb.reactivestreams.client.MongoClient) extends Closeable with Product with Serializable
A client-side representation of a MongoDB cluster. Instances can represent either a standalone MongoDB instance, a replica set, or a sharded cluster. Instance of this class are responsible for maintaining an up-to-date state of the cluster, and possibly cache resources related to this, including background threads for monitoring, and connection pools.
Instance of this class server as factories for MongoDatabase instances.
- wrapped
- the underlying java MongoClient 
- Since
- 1.0 
- Alphabetic
- By Inheritance
- MongoClient
- Serializable
- Product
- Equals
- Closeable
- AutoCloseable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
-    new MongoClient(wrapped: com.mongodb.reactivestreams.client.MongoClient)- wrapped
- the underlying java MongoClient 
 
Value Members
-   final  def !=(arg0: Any): Boolean- Definition Classes
- AnyRef → Any
 
-   final  def ##: Int- Definition Classes
- AnyRef → Any
 
-   final  def ==(arg0: Any): Boolean- Definition Classes
- AnyRef → Any
 
-   final  def asInstanceOf[T0]: T0- Definition Classes
- Any
 
-    def clone(): AnyRef- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
 
-    def close(): UnitClose the client, which will close all underlying cached resources, including, for example, sockets and background monitoring threads. Close the client, which will close all underlying cached resources, including, for example, sockets and background monitoring threads. - Definition Classes
- MongoClient → Closeable → AutoCloseable
 
-   final  def eq(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-   final  def getClass(): Class[_ <: AnyRef]- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
 
-    def getClusterDescription: ClusterDescriptionGets the current cluster description. Gets the current cluster description. This method will not block, meaning that it may return a { @link ClusterDescription} whose { @code clusterType} is unknown and whose { @link com.mongodb.connection.ServerDescription}s are all in the connecting state. If the application requires notifications after the driver has connected to a member of the cluster, it should register a { @link ClusterListener} via the { @link ClusterSettings} in { @link com.mongodb.MongoClientSettings}. - returns
- the current cluster description 
 - Since
- 4.1 
- See also
- ClusterSettings.Builder#addClusterListener(ClusterListener) - com.mongodb.MongoClientSettings.Builder#applyToClusterSettings(com.mongodb.Block) 
 
-    def getDatabase(name: String): MongoDatabaseGets the database with the given name. Gets the database with the given name. - name
- the name of the database 
- returns
- the database 
 
-   final  def isInstanceOf[T0]: Boolean- Definition Classes
- Any
 
-    def listDatabaseNames(clientSession: ClientSession): Observable[String]Get a list of the database names Get a list of the database names - clientSession
- the client session with which to associate this operation 
- returns
- an iterable containing all the names of all the databases 
 - Since
- 2.2 
- Note
- Requires MongoDB 3.6 or greater 
 
-    def listDatabaseNames(): Observable[String]Get a list of the database names Get a list of the database names - returns
- an iterable containing all the names of all the databases 
 
-    def listDatabases[TResult](clientSession: ClientSession)(implicit e: DefaultsTo[TResult, Document], ct: ClassTag[TResult]): ListDatabasesObservable[TResult]Gets the list of databases Gets the list of databases - TResult
- the type of the class to use instead of - Document.
- clientSession
- the client session with which to associate this operation 
- returns
- the fluent list databases interface 
 - Since
- 2.2 
- Note
- Requires MongoDB 3.6 or greater 
 
-    def listDatabases[TResult]()(implicit e: DefaultsTo[TResult, Document], ct: ClassTag[TResult]): ListDatabasesObservable[TResult]Gets the list of databases Gets the list of databases - TResult
- the type of the class to use instead of - Document.
- returns
- the fluent list databases interface 
 
-   final  def ne(arg0: AnyRef): Boolean- Definition Classes
- AnyRef
 
-   final  def notify(): Unit- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
 
-   final  def notifyAll(): Unit- Definition Classes
- AnyRef
- Annotations
- @native() @IntrinsicCandidate()
 
-    def productElementNames: Iterator[String]- Definition Classes
- Product
 
-    def startSession(options: ClientSessionOptions): SingleObservable[ClientSession]Creates a client session. Creates a client session. Note: A ClientSession instance can not be used concurrently in multiple asynchronous operations. - options
- the options for the client session 
 - Since
- 2.2 
- Note
- Requires MongoDB 3.6 or greater 
 
-    def startSession(): SingleObservable[ClientSession]Creates a client session. Creates a client session. Note: A ClientSession instance can not be used concurrently in multiple asynchronous operations. - Since
- 2.4 
- Note
- Requires MongoDB 3.6 or greater 
 
-   final  def synchronized[T0](arg0: => T0): T0- Definition Classes
- AnyRef
 
-   final  def wait(arg0: Long, arg1: Int): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
 
-   final  def wait(arg0: Long): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
 
-   final  def wait(): Unit- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
 
-    def watch[C](clientSession: ClientSession, pipeline: Seq[Bson])(implicit e: DefaultsTo[C, Document], ct: ClassTag[C]): ChangeStreamObservable[C]Creates a change stream for this collection. Creates a change stream for this collection. - C
- the target document type of the observable. 
- clientSession
- the client session with which to associate this operation 
- pipeline
- the aggregation pipeline to apply to the change stream 
- returns
- the change stream observable 
 - Since
- 2.4 
- Note
- Requires MongoDB 4.0 or greater 
 
-    def watch[C](clientSession: ClientSession)(implicit e: DefaultsTo[C, Document], ct: ClassTag[C]): ChangeStreamObservable[C]Creates a change stream for this collection. Creates a change stream for this collection. - C
- the target document type of the observable. 
- clientSession
- the client session with which to associate this operation 
- returns
- the change stream observable 
 - Since
- 2.4 
- Note
- Requires MongoDB 4.0 or greater 
 
-    def watch[C](pipeline: Seq[Bson])(implicit e: DefaultsTo[C, Document], ct: ClassTag[C]): ChangeStreamObservable[C]Creates a change stream for this collection. Creates a change stream for this collection. - C
- the target document type of the observable. 
- pipeline
- the aggregation pipeline to apply to the change stream 
- returns
- the change stream observable 
 - Since
- 2.4 
- Note
- Requires MongoDB 4.0 or greater 
 
-    def watch[C]()(implicit e: DefaultsTo[C, Document], ct: ClassTag[C]): ChangeStreamObservable[C]Creates a change stream for this collection. Creates a change stream for this collection. - C
- the target document type of the observable. 
- returns
- the change stream observable 
 - Since
- 2.4 
- Note
- Requires MongoDB 4.0 or greater 
 
Deprecated Value Members
-    def finalize(): Unit- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
 
This is the documentation for the MongoDB Scala driver.
Driver structure
The mongodb scala driver.
To get started you need a MongoClient instance, either from a connection string or via a org.mongodb.scala.MongoClientSettings.
Notable packages include: