t

reactivemongo.api

DBMetaCommands

trait DBMetaCommands extends AnyRef

A mixin that provides commands about this database itself.

Self Type
DBMetaCommands with DB
Annotations
@deprecated
Deprecated

(Since version 0.19.8) Internal: will be made private

Linear Supertypes
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DBMetaCommands
  2. AnyRef
  3. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Type Members

  1. type DBMetaWriter[T] = BSONDocumentWriter[T]

    Type of writer to serialization database metadata

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toany2stringadd[DBMetaCommands] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (DBMetaCommands, B)
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toArrowAssoc[DBMetaCommands] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
  8. def collectionNames(implicit ec: ExecutionContext): Future[List[String]]

    Returns the names of the collections in this database.

    Returns the names of the collections in this database.

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def listCollections(db: DefaultDB)(
      implicit ec: ExecutionContext): Future[List[String]] =
      db.collectionNames
  9. def createUser[T](user: String, pwd: Option[String], customData: Option[T], roles: List[UserRole], digestPassword: Boolean, writeConcern: commands.WriteConcern, restrictions: List[AuthenticationRestriction], mechanisms: List[AuthenticationMode])(implicit ec: ExecutionContext, w: (DBMetaCommands.this)#DBMetaWriter[T]): Future[Unit]

    Create the user with given properties.

    Create the user with given properties.

    import scala.concurrent.{ ExecutionContext, Future }
    
    import reactivemongo.api.{
      DefaultDB,
      ScramSha256Authentication,
      ScramSha1Authentication,
      WriteConcern
    }
    import reactivemongo.api.commands.UserRole
    
    def createReadWriteUser(db: DefaultDB, name: String)(
      implicit ec: ExecutionContext): Future[Unit] =
      db.createUser(
        user = name,
        pwd = None, // no initial password
        customData = None, // no custom data
        roles = List(UserRole("readWrite")),
        digestPassword = true,
        writeConcern = WriteConcern.Default,
        restrictions = List.empty,
        mechanisms = List(
          ScramSha1Authentication, ScramSha256Authentication))
    T

    the type of custom data associated with the created user

    user

    the name of the user to be created

    pwd

    the user password (not required if the database uses external credentials)

    customData

    the custom data to associate with the user account

    roles

    the roles granted to the user, possibly an empty to create users without roles

    digestPassword

    when true, the mongod instance will create the hash of the user password (default: true)

    writeConcern

    the optional level of write concern

    restrictions

    the authentication restriction

    mechanisms

    the authentication mechanisms (e.g. ScramSha1Authentication)

  10. def drop()(implicit ec: ExecutionContext): Future[Unit]

    Drops this database.

    Drops this database.

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def dropDB(db: DefaultDB)(
      implicit ec: ExecutionContext): Future[Unit] = db.drop()
  11. def ensuring(cond: (DBMetaCommands) => Boolean, msg: => Any): DBMetaCommands
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toEnsuring[DBMetaCommands] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  12. def ensuring(cond: (DBMetaCommands) => Boolean): DBMetaCommands
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toEnsuring[DBMetaCommands] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  13. def ensuring(cond: Boolean, msg: => Any): DBMetaCommands
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toEnsuring[DBMetaCommands] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: Boolean): DBMetaCommands
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toEnsuring[DBMetaCommands] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  16. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  17. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toStringFormat[DBMetaCommands] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  18. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  19. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  20. def indexesManager(implicit ec: ExecutionContext): Aux[Pack]

    Returns an index manager for this database.

    Returns an index manager for this database.

    import scala.concurrent.{ ExecutionContext, Future }
    
    import reactivemongo.api.DefaultDB
    import reactivemongo.api.indexes.NSIndex
    
    def listIndexes(db: DefaultDB)(
      implicit ec: ExecutionContext): Future[List[String]] =
      db.indexesManager.list().map(_.flatMap { ni: NSIndex =>
        ni.index.name.toList
      })
  21. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  22. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  23. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  24. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  25. def ping(readPreference: ReadPreference = ReadPreference.nearest)(implicit ec: ExecutionContext): Future[Boolean]

    Tests if the server, resolved according to the given read preference, responds to commands.

    Tests if the server, resolved according to the given read preference, responds to commands.

    returns

    true if successful (even if the server is write locked)

    Since

    MongoDB 3.0

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def pingDB(db: DefaultDB)(
      implicit ec: ExecutionContext): Future[Boolean] =
      db.ping() // with default ReadPreference
  26. def renameCollection[C <: Collection](db: String, from: String, to: String, dropExisting: Boolean = false, failoverStrategy: FailoverStrategy = failoverStrategy)(implicit ec: ExecutionContext, producer: CollectionProducer[C] = Serialization.defaultCollectionProducer): Future[C]

    Renames a collection.

    Renames a collection. Can only be executed if the this database reference is the admin one.

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def addCollSuffix(
      admin: DefaultDB,
      coll: String,
      suffix: String)(implicit ec: ExecutionContext): Future[Unit] =
      admin.renameCollection("myDB", coll, coll + suffix).map(_ => {})
    db

    the name of the database where the collection exists with the current name

    from

    the current name of the collection, in the specified db

    to

    the new name of this collection (inside the same db)

    dropExisting

    If a collection of name to already exists, then drops that collection before renaming this one.

    returns

    a failure if the dropExisting option is false and the target collection already exists

  27. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  28. def toString(): String
    Definition Classes
    AnyRef → Any
  29. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  30. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  31. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()

Deprecated Value Members

  1. def createUser(user: String, pwd: Option[String], customData: Option[BSONDocument], roles: List[UserRole], digestPassword: Boolean, writeConcern: commands.WriteConcern, restrictions: List[AuthenticationRestriction], mechanisms: List[AuthenticationMode])(implicit ec: ExecutionContext): Future[Unit]
    Annotations
    @deprecated
    Deprecated

    (Since version 0.19.1) Use createUser with DBMetaWriter

  2. def createUser(user: String, pwd: Option[String], roles: List[UserRole], digestPassword: Boolean = true, writeConcern: commands.WriteConcern = connection.options.writeConcern, customData: Option[BSONDocument] = None)(implicit ec: ExecutionContext): Future[Unit]
    Annotations
    @deprecated
    Deprecated

    (Since version 0.18.4) Use createUser with complete authentication options

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

    (Since version ) see corresponding Javadoc for more information.

  4. def serverStatus(implicit ec: ExecutionContext): Future[ServerStatusResult]

    Returns the server status.

    Returns the server status.

    Annotations
    @deprecated
    Deprecated

    (Since version 0.19.4) Will be removed (not maintained): use db.runCommand(BSONDocument("serverStatus" -> 1) with custom reader

  5. def [B](y: B): (DBMetaCommands, B)
    Implicit
    This member is added by an implicit conversion from DBMetaCommands toArrowAssoc[DBMetaCommands] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use -> instead. If you still wish to display it as one character, consider using a font with programming ligatures such as Fira Code.

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromDBMetaCommands to any2stringadd[DBMetaCommands]

Inherited by implicit conversion StringFormat fromDBMetaCommands to StringFormat[DBMetaCommands]

Inherited by implicit conversion Ensuring fromDBMetaCommands to Ensuring[DBMetaCommands]

Inherited by implicit conversion ArrowAssoc fromDBMetaCommands to ArrowAssoc[DBMetaCommands]

Ungrouped