MongoDAO

dev.mongocamp.driver.mongodb.MongoDAO
abstract class MongoDAO[A](provider: DatabaseProvider, collectionName: String)(implicit ct: ClassTag[A], decoder: Decoder[A]) extends Crud[A]

Created by tom on 20.01.17.

Attributes

Graph
Supertypes
class Crud[A]
class Search[A]
class Base[A]
trait CirceSchema
trait LazyLogging
class Object
trait Matchable
class Any
Show all
Known subtypes
object Raw
class DocumentDao
object Chunks
object Files

Members list

Type members

Classlikes

object Raw extends MongoDAO[Document]

Attributes

Supertypes
class MongoDAO[Document]
class Crud[Document]
class Search[Document]
class Base[Document]
trait CirceSchema
trait LazyLogging
class Object
trait Matchable
class Any
Show all
Self type
Raw.type

Value members

Concrete methods

protected def coll: MongoCollection[Document]
def columnNames(sampleSize: Int, maxWait: Int): List[String]

Value parameters

sampleSize

use sample size greater 0 for better performance on big collections

Attributes

Returns

List of column names

def compact: Observable[Option[CompactResult]]
def importJsonFile(file: File): SingleObservable[BulkWriteResult]
override def toString: String

Returns a string representation of the object.

Returns a string representation of the object.

The default representation is platform dependent.

Attributes

Returns

a string representation of the object.

Definition Classes
Any

Inherited methods

def bulkWrite(requests: List[WriteModel[Document]], ordered: Boolean): SingleObservable[BulkWriteResult]

Attributes

Inherited from:
Crud
def bulkWrite(requests: List[WriteModel[Document]], options: BulkWriteOptions): SingleObservable[BulkWriteResult]

Attributes

Inherited from:
Crud
def bulkWriteMany(values: Seq[A], ordered: Boolean): SingleObservable[BulkWriteResult]

Attributes

Inherited from:
Crud
def bulkWriteMany(values: Seq[A], options: BulkWriteOptions): SingleObservable[BulkWriteResult]

Attributes

Inherited from:
Crud
def count(filter: Bson, options: CountOptions): Observable[Long]

Attributes

Inherited from:
Base
def createExpiringIndexForField(fieldName: String, duration: Duration, sortAscending: Boolean, name: Option[String]): SingleObservable[String]

Attributes

Inherited from:
Base
def createHashedIndexForField(fieldName: String, options: IndexOptions): SingleObservable[String]

Attributes

Inherited from:
Base
def createIndex(key: Bson, options: IndexOptions): SingleObservable[String]

Attributes

Inherited from:
Base
def createIndexForField(fieldName: String, sortAscending: Boolean, options: IndexOptions): SingleObservable[String]

Attributes

Inherited from:
Base
def createIndexForFieldWithName(fieldName: String, sortAscending: Boolean, name: String): SingleObservable[String]

Attributes

Inherited from:
Base
def createTextIndexForField(fieldName: String, options: IndexOptions): SingleObservable[String]

Attributes

Inherited from:
Base
def createUniqueIndexForField(fieldName: String, sortAscending: Boolean, name: Option[String]): SingleObservable[String]

Attributes

Inherited from:
Base
def decodeFromJson(json: Json): Any

Attributes

Inherited from:
CirceSchema
def deleteAll(options: DeleteOptions): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def deleteAll(): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def deleteMany(filter: Bson, options: DeleteOptions): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def deleteMany(filter: Bson): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def deleteOne(value: A): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def deleteOne(filter: Bson, options: DeleteOptions): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def deleteOne(filter: Bson): Observable[DeleteResult]

Attributes

Inherited from:
Crud
def distinct[S](fieldName: String, filter: Bson): DistinctObservable[BsonValue]

Attributes

Inherited from:
Search
def distinctResult[S](fieldName: String, filter: Bson): Seq[S]

Attributes

Inherited from:
Search
def documentToObject[A](document: Document, decoder: Decoder[A]): A

Attributes

Inherited from:
Base
def drop(): Observable[Unit]

Attributes

Inherited from:
Base
def dropIndex(keys: Bson, options: DropIndexOptions): SingleObservable[Unit]

Attributes

Inherited from:
Base
def dropIndexForName(name: String, options: DropIndexOptions): SingleObservable[Unit]

Attributes

Inherited from:
Base
def encodeAnyToJson(a: Any, deepth: Int): Json

Attributes

Inherited from:
CirceSchema
def encodeMapStringAny(a: Map[String, Any]): Json

Attributes

Inherited from:
CirceSchema
def find(name: String, value: Any): Observable[A]

Attributes

Inherited from:
Search
def find(filter: Bson, sort: Bson, projection: Bson, limit: Int, skip: Int): Observable[A]

Attributes

Inherited from:
Search
def findAggregated(pipeline: Seq[Bson], allowDiskUse: Boolean): Observable[A]

Attributes

Inherited from:
Search
def findById(oid: ObjectId): Observable[A]

Attributes

Inherited from:
Search
def hasIndexForField(fieldName: String): Boolean

Attributes

Inherited from:
Base
def indexForName(name: String): Option[MongoIndex]

Attributes

Inherited from:
Base
def indexList(): List[MongoIndex]

Attributes

Inherited from:
Base
def insertMany(values: Seq[A], options: InsertManyOptions): Observable[InsertManyResult]

Attributes

Inherited from:
Crud
def insertMany(values: Seq[A]): Observable[InsertManyResult]

Attributes

Inherited from:
Crud
def insertOne(value: A, options: InsertOneOptions): Observable[InsertOneResult]

Attributes

Inherited from:
Crud
def insertOne(value: A): Observable[InsertOneResult]

Attributes

Inherited from:
Crud
def listIndexes: ListIndexesObservable[Map[String, Any]]

Attributes

Inherited from:
Base
def productElementNames(internalProduct: Product): Iterator[String]

Attributes

Inherited from:
CirceProductSchema
def replaceOne(filter: Bson, value: A, options: ReplaceOptions): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def replaceOne(filter: Bson, value: A): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def replaceOne(value: A, options: ReplaceOptions): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def replaceOne(value: A): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def touchInternal(filter: Bson): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def updateMany(filter: Bson, update: Bson, options: UpdateOptions): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def updateMany(filter: Bson, update: Bson): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def updateOne(filter: Bson, update: Bson, options: UpdateOptions): Observable[UpdateResult]

Attributes

Inherited from:
Crud
def updateOne(filter: Bson, update: Bson): Observable[UpdateResult]

Attributes

Inherited from:
Crud

Concrete fields

val collection: MongoCollection[Document]
val databaseName: String
val name: String

Inherited fields

lazy protected val logger: Logger

Attributes

Inherited from:
LazyLogging

Implicits

Inherited implicits

implicit val AnyFormat: Encoder[Any] & Decoder[Any]

Attributes

Inherited from:
CirceSchema
implicit val DateFormat: Encoder[Date] & Decoder[Date]

Attributes

Inherited from:
CirceSchema
implicit val DateTimeFormat: Encoder[DateTime] & Decoder[DateTime]

Attributes

Inherited from:
CirceSchema
implicit lazy val DocumentOneFormat: Decoder[Document]

Attributes

Inherited from:
CirceSchema
implicit lazy val DocumentTowFormat: Decoder[Document]

Attributes

Inherited from:
CirceSchema
implicit val MapStringAnyFormat: Encoder[Map[String, Any]] & Decoder[Map[String, Any]]

Attributes

Inherited from:
CirceSchema
implicit val ObjectIdFormat: Encoder[ObjectId] & Decoder[ObjectId]

Attributes

Inherited from:
CirceSchema