Packages

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

Linear Supertypes
Serializable, Product, Equals, Closeable, AutoCloseable, MongoCluster, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. MongoClient
  2. Serializable
  3. Product
  4. Equals
  5. Closeable
  6. AutoCloseable
  7. MongoCluster
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new MongoClient(wrapped: com.mongodb.reactivestreams.client.MongoClient)

    wrapped

    the underlying java MongoClient

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##: Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @IntrinsicCandidate()
  6. 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
  7. 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
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @IntrinsicCandidate()
  10. 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 whose 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 ClusterListener via the ClusterSettings in MongoClientSettings.

    returns

    the current cluster description

    Since

    4.1

  11. 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
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. def listDatabaseNames(clientSession: ClientSession): Observable[String]

    Get a list of the database names

    Get a list of the database names

    List Databases

    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

  14. def listDatabaseNames(): Observable[String]

    Get a list of the database names

    Get a list of the database names

    List Databases

    returns

    an iterable containing all the names of all the databases

    Definition Classes
    MongoCluster
  15. 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

  16. 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
  17. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @IntrinsicCandidate()
  20. def productElementNames: Iterator[String]
    Definition Classes
    Product
  21. lazy val readConcern: com.mongodb.ReadConcern

    Get the read concern for the MongoDatabase.

    Get the read concern for the MongoDatabase.

    returns

    the ReadConcern

    Definition Classes
    MongoCluster
  22. lazy val readPreference: com.mongodb.ReadPreference

    Get the read preference for the MongoDatabase.

    Get the read preference for the MongoDatabase.

    returns

    the { @link com.mongodb.ReadPreference}

    Definition Classes
    MongoCluster
  23. 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

  24. 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

  25. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  26. 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 and maxCommitTimeMS.

    • 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 available
      • socketTimeoutMS: 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 single commitTransaction 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()
  27. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  28. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  30. 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

  31. 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

  32. 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

  33. 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

  34. 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

  35. def withReadConcern(readConcern: com.mongodb.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

  36. def withReadPreference(readPreference: com.mongodb.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
  37. 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

  38. def withWriteConcern(writeConcern: com.mongodb.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
  39. lazy val writeConcern: com.mongodb.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

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable]) @Deprecated
    Deprecated

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from Closeable

Inherited from AutoCloseable

Inherited from MongoCluster

Inherited from AnyRef

Inherited from Any

Ungrouped