case class MongoClient(wrapped: com.mongodb.reactivestreams.client.MongoClient) extends MongoCluster with 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
- Serializable
- Product
- Equals
- Closeable
- AutoCloseable
- MongoCluster
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
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( ... ) @native() @IntrinsicCandidate()
-
def
close(): Unit
Close 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
-
lazy val
codecRegistry: CodecRegistry
Get the codec registry for the MongoDatabase.
Get the codec registry for the MongoDatabase.
- returns
the { @link org.bson.codecs.configuration.CodecRegistry}
- Definition Classes
- MongoCluster
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @IntrinsicCandidate()
-
def
getClusterDescription: ClusterDescription
Gets the current cluster description.
Gets the current cluster description.
This method will not block, meaning that it may return a
ClusterDescription
whoseclusterType
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 aClusterListener
via theClusterSettings
inMongoClientSettings
.- returns
the current cluster description
- Since
4.1
-
def
getDatabase(name: String): MongoDatabase
Gets the database with the given name.
Gets the database with the given name.
- name
the name of the database
- returns
the database
- Definition Classes
- MongoCluster
-
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
- Definition Classes
- MongoCluster
- 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
- Definition Classes
- MongoCluster
-
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
- Definition Classes
- MongoCluster
- 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
- Definition Classes
- MongoCluster
-
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()
-
lazy val
readConcern: ReadConcern
Get the read concern for the MongoDatabase.
-
lazy val
readPreference: ReadPreference
Get the read preference for the MongoDatabase.
Get the read preference for the MongoDatabase.
- returns
the { @link com.mongodb.ReadPreference}
- Definition Classes
- MongoCluster
-
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
- Definition Classes
- MongoCluster
- 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.
- Definition Classes
- MongoCluster
- Since
2.4
- Note
Requires MongoDB 3.6 or greater
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
lazy val
timeout: Option[Duration]
The time limit for the full execution of an operation.
The time limit for the full execution of an operation.
If not null the following deprecated options will be ignored:
waitQueueTimeoutMS
,socketTimeoutMS
,wTimeoutMS
,maxTimeMS
andmaxCommitTimeMS
.null
means that the timeout mechanism for operations will defer to using:waitQueueTimeoutMS
: The maximum wait time in milliseconds that a thread may wait for a connection to become availablesocketTimeoutMS
: How long a send or receive on a socket can take before timing out.wTimeoutMS
: How long the server will wait for the write concern to be fulfilled before timing out.maxTimeMS
: The time limit for processing operations on a cursor. See: [cursor.maxTimeMS](https://docs.mongodb.com/manual/reference/method/cursor.maxTimeMS").maxCommitTimeMS
: The maximum amount of time to allow a singlecommitTransaction
command to execute.
0
means infinite timeout.> 0
The time limit to use for the full execution of an operation.
- returns
the optional timeout duration
- Definition Classes
- MongoCluster
- Annotations
- @Alpha()
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
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
- Definition Classes
- MongoCluster
- 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
- Definition Classes
- MongoCluster
- 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
- Definition Classes
- MongoCluster
- 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
- Definition Classes
- MongoCluster
- Since
2.4
- Note
Requires MongoDB 4.0 or greater
-
def
withCodecRegistry(codecRegistry: CodecRegistry): MongoCluster
Create a new MongoCluster instance with a different codec registry.
Create a new MongoCluster instance with a different codec registry.
The { @link CodecRegistry} configured by this method is effectively treated by the driver as an instance of { @link CodecProvider}, which { @link CodecRegistry} extends. So there is no benefit to defining a class that implements { @link CodecRegistry}. Rather, an application should always create { @link CodecRegistry} instances using the factory methods in { @link CodecRegistries}.
- codecRegistry
the new { @link org.bson.codecs.configuration.CodecRegistry} for the collection
- returns
a new MongoCluster instance with the different codec registry
- Definition Classes
- MongoCluster
- See also
CodecRegistries
-
def
withReadConcern(readConcern: ReadConcern): MongoCluster
Create a new MongoCluster instance with a different read concern.
Create a new MongoCluster instance with a different read concern.
- readConcern
the new ReadConcern for the collection
- returns
a new MongoCluster instance with the different ReadConcern
- Definition Classes
- MongoCluster
- Since
1.1
-
def
withReadPreference(readPreference: ReadPreference): MongoCluster
Create a new MongoCluster instance with a different read preference.
Create a new MongoCluster instance with a different read preference.
- readPreference
the new { @link com.mongodb.ReadPreference} for the collection
- returns
a new MongoCluster instance with the different readPreference
- Definition Classes
- MongoCluster
-
def
withTimeout(timeout: Duration): MongoCluster
Create a new MongoCluster instance with the set time limit for the full execution of an operation.
Create a new MongoCluster instance with the set time limit for the full execution of an operation.
-
0
means infinite timeout. -> 0
The time limit to use for the full execution of an operation.- timeout
the timeout, which must be greater than or equal to 0
- returns
a new MongoCluster instance with the set time limit for operations
- Definition Classes
- MongoCluster
- Annotations
- @Alpha()
- Since
5.2
-
def
withWriteConcern(writeConcern: WriteConcern): MongoCluster
Create a new MongoCluster instance with a different write concern.
Create a new MongoCluster instance with a different write concern.
- writeConcern
the new { @link com.mongodb.WriteConcern} for the collection
- returns
a new MongoCluster instance with the different writeConcern
- Definition Classes
- MongoCluster
-
lazy val
writeConcern: WriteConcern
Get the write concern for the MongoDatabase.
Get the write concern for the MongoDatabase.
- returns
the { @link com.mongodb.WriteConcern}
- Definition Classes
- MongoCluster
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated