Class

reactivemongo.api.indexes

LegacyIndexesManager

Related Doc: package indexes

Permalink

class LegacyIndexesManager extends AbstractLegacyManager

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

Self Type
LegacyIndexesManager
Annotations
@deprecated
Deprecated

(Since version 0.20.3) Internal: will be made private

Linear Supertypes
AbstractLegacyManager, IndexesManager, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. LegacyIndexesManager
  2. AbstractLegacyManager
  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. All

Instance Constructors

  1. new LegacyIndexesManager(db: DB)(implicit ec: ExecutionContext)

    Permalink

    db

    The subject database.

Type Members

  1. final type NSIndex = indexes.NSIndex { type Pack = LegacyIndexesManager.this.Pack }

    Permalink
    Definition Classes
    IndexesManager
  2. type Pack = bson.collection.BSONSerializationPack.type

    Permalink
    Definition Classes
    LegacyIndexesManagerIndexesManager

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. def +(other: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to any2stringadd[LegacyIndexesManager] performed by method any2stringadd in scala.Predef.
    Definition Classes
    any2stringadd
  4. def ->[B](y: B): (LegacyIndexesManager, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to ArrowAssoc[LegacyIndexesManager] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc
    Annotations
    @inline()
  5. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  6. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. lazy val collection: Collection

    Permalink
    Attributes
    protected
    Definition Classes
    AbstractLegacyManager
  9. def create(nsIndex: NSIndex): Future[WriteResult]

    Permalink

    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
    AbstractLegacyManager → IndexesManager
  10. def drop(collectionName: String, indexName: String): Future[Int]

    Permalink

    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
    AbstractLegacyManager → IndexesManager
  11. def drop(nsIndex: NSIndex): Future[Int]

    Permalink

    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
  12. def dropAll(collectionName: String): Future[Int]

    Permalink

    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
    AbstractLegacyManager → IndexesManager
  13. def ensure(nsIndex: NSIndex): Future[Boolean]

    Permalink

    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
    AbstractLegacyManager → IndexesManager
  14. def ensuring(cond: (LegacyIndexesManager) ⇒ Boolean, msg: ⇒ Any): LegacyIndexesManager

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to Ensuring[LegacyIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  15. def ensuring(cond: (LegacyIndexesManager) ⇒ Boolean): LegacyIndexesManager

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to Ensuring[LegacyIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  16. def ensuring(cond: Boolean, msg: ⇒ Any): LegacyIndexesManager

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to Ensuring[LegacyIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  17. def ensuring(cond: Boolean): LegacyIndexesManager

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to Ensuring[LegacyIndexesManager] performed by method Ensuring in scala.Predef.
    Definition Classes
    Ensuring
  18. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  19. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  20. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  21. def formatted(fmtstr: String): String

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to StringFormat[LegacyIndexesManager] performed by method StringFormat in scala.Predef.
    Definition Classes
    StringFormat
    Annotations
    @inline()
  22. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  23. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  25. def list(): Future[List[NSIndex]]

    Permalink

    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
    AbstractLegacyManager → IndexesManager
  26. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  27. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  29. def onCollection(collectionName: String): Aux[Pack]

    Permalink

    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
    AbstractLegacyManager → IndexesManager
  30. val pack: Pack

    Permalink
    Attributes
    protected
    Definition Classes
    LegacyIndexesManager → AbstractLegacyManager
  31. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  32. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  33. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  34. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  35. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  36. def [B](y: B): (LegacyIndexesManager, B)

    Permalink
    Implicit information
    This member is added by an implicit conversion from LegacyIndexesManager to ArrowAssoc[LegacyIndexesManager] performed by method ArrowAssoc in scala.Predef.
    Definition Classes
    ArrowAssoc

Inherited from AbstractLegacyManager

Inherited from IndexesManager

Inherited from AnyRef

Inherited from Any

Inherited by implicit conversion any2stringadd from LegacyIndexesManager to any2stringadd[LegacyIndexesManager]

Inherited by implicit conversion StringFormat from LegacyIndexesManager to StringFormat[LegacyIndexesManager]

Inherited by implicit conversion Ensuring from LegacyIndexesManager to Ensuring[LegacyIndexesManager]

Inherited by implicit conversion ArrowAssoc from LegacyIndexesManager to ArrowAssoc[LegacyIndexesManager]

Ungrouped