Packages

c

reactivemongo.api.indexes

DefaultIndexesManager

class DefaultIndexesManager extends AbstractIndexesManager

A helper class to manage the indexes on a Mongo 3.x database.

Annotations
@deprecated
Deprecated

(Since version 0.20.3) Internal: will be made private

Linear Supertypes
AbstractIndexesManager, IndexesManager, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. DefaultIndexesManager
  2. AbstractIndexesManager
  3. IndexesManager
  4. AnyRef
  5. 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

Instance Constructors

  1. new DefaultIndexesManager(db: DB with DBMetaCommands)(implicit ec: ExecutionContext)

    db

    the subject database

Type Members

  1. final type NSIndex = indexes.NSIndex { type Pack = DefaultIndexesManager.this.Pack }
    Definition Classes
    IndexesManager
  2. type Pack = bson.collection.BSONSerializationPack.type

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 DefaultIndexesManager toany2stringadd[DefaultIndexesManager] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (DefaultIndexesManager, B)
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toArrowAssoc[DefaultIndexesManager] 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 create(nsIndex: NSIndex): Future[WriteResult]

    Creates the given index.

    Creates the given index.

    import scala.concurrent.{ ExecutionContext, Future }
    
    import reactivemongo.api.DefaultDB
    import reactivemongo.api.indexes.NSIndex
    
    def createIndexes(
      db: DefaultDB, is: Seq[NSIndex.Default])(
      implicit ec: ExecutionContext): Future[Unit] =
      Future.sequence(
        is.map(idx => db.indexesManager.create(idx))).map(_ => {})

    _Warning_: given the options you choose, and the data to index, it can be a long and blocking operation on the database. You should really consider reading http://www.mongodb.org/display/DOCS/Indexes before doing this, especially in production.

    nsIndex

    the index to create

    Definition Classes
    AbstractIndexesManager → IndexesManager
  9. def drop(collectionName: String, indexName: String): Future[Int]

    Drops the specified index on the given collection.

    Drops the specified index on the given collection.

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def dropIndex(db: DefaultDB, name: String)(
      implicit ec: ExecutionContext): Future[Int] =
      db.indexesManager.drop("myColl", name)
    collectionName

    the collection name

    indexName

    the name of the index to be dropped

    returns

    The number of indexes that were dropped.

    Definition Classes
    AbstractIndexesManager → IndexesManager
  10. def drop(nsIndex: NSIndex): Future[Int]

    Drops the specified index.

    Drops the specified index.

    import scala.concurrent.{ ExecutionContext, Future }
    
    import reactivemongo.api.DefaultDB
    import reactivemongo.api.indexes.NSIndex
    
    def dropIndex(db: DefaultDB, idx: NSIndex.Default)(
      implicit ec: ExecutionContext): Future[Int] =
      db.indexesManager.drop(idx)
    returns

    The number of indexes that were dropped.

    Definition Classes
    IndexesManager
  11. def dropAll(collectionName: String): Future[Int]

    Drops all the indexes on the specified collection.

    Drops all the indexes on the specified collection.

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def dropAllIndexes(db: DefaultDB)(
      implicit ec: ExecutionContext): Future[Int] =
      db.indexesManager.dropAll("myColl")
    collectionName

    the collection name

    returns

    The number of indexes that were dropped.

    Definition Classes
    AbstractIndexesManager → IndexesManager
  12. def ensure(nsIndex: NSIndex): Future[Boolean]

    Creates the given index only if it does not exist on this database.

    Creates the given index only if it does not exist on this database.

    The following rules are used to check the matching index: - if nsIndex.isDefined, it checks using the index name, - otherwise it checks using the key.

    import scala.concurrent.{ ExecutionContext, Future }
    
    import reactivemongo.api.DefaultDB
    import reactivemongo.api.indexes.NSIndex
    
    def ensureIndexes(
      db: DefaultDB, is: Seq[NSIndex.Default])(
      implicit ec: ExecutionContext): Future[Unit] =
      Future.sequence(
        is.map(idx => db.indexesManager.ensure(idx))).map(_ => {})

    _Warning_: given the options you choose, and the data to index, it can be a long and blocking operation on the database. You should really consider reading http://www.mongodb.org/display/DOCS/Indexes before doing this, especially in production.

    nsIndex

    the index to create

    returns

    true if the index was created, false if it already exists.

    Definition Classes
    AbstractIndexesManager → IndexesManager
  13. def ensuring(cond: (DefaultIndexesManager) => Boolean, msg: => Any): DefaultIndexesManager
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toEnsuring[DefaultIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  14. def ensuring(cond: (DefaultIndexesManager) => Boolean): DefaultIndexesManager
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toEnsuring[DefaultIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: Boolean, msg: => Any): DefaultIndexesManager
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toEnsuring[DefaultIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: Boolean): DefaultIndexesManager
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toEnsuring[DefaultIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  19. def formatted(fmtstr: String): String
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toStringFormat[DefaultIndexesManager] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  20. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  21. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  22. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  23. def list(): Future[List[NSIndex]]

    Lists all the index on this database.

    Lists all the index on 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
      })
    Definition Classes
    AbstractIndexesManager → IndexesManager
  24. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  26. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  27. def onCollection(collectionName: String): Aux[Pack]

    Returns a manager for the specified collection.

    Returns a manager for the specified collection.

    import scala.concurrent.{ ExecutionContext, Future }
    import reactivemongo.api.DefaultDB
    
    def countCollIndexes(db: DefaultDB, collName: String)(
      implicit ec: ExecutionContext): Future[Int] =
      db.indexesManager.onCollection(collName).list().map(_.size)
    collectionName

    the collection name

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

Deprecated Value Members

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

  2. def [B](y: B): (DefaultIndexesManager, B)
    Implicit
    This member is added by an implicit conversion from DefaultIndexesManager toArrowAssoc[DefaultIndexesManager] 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 AbstractIndexesManager

Inherited from IndexesManager

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd fromDefaultIndexesManager to any2stringadd[DefaultIndexesManager]

Inherited by implicit conversion StringFormat fromDefaultIndexesManager to StringFormat[DefaultIndexesManager]

Inherited by implicit conversion Ensuring fromDefaultIndexesManager to Ensuring[DefaultIndexesManager]

Inherited by implicit conversion ArrowAssoc fromDefaultIndexesManager to ArrowAssoc[DefaultIndexesManager]

Ungrouped