mongo_dart library

Server-side driver library for MongoDb implemented in pure Dart. As most of IO in Dart, mongo_dart is totally async -using Futures and Streams. .

Classes

Abs
$abs operator
Accumulator
Basic accumulation operator
Add
$add operator
AddFields
$addFields aggregation stage
AddToSet
$addToSet operator
AEIterator<T>
Iterator for AEList
AEList
Aggregation expression's list
AEObject
Aggregation expression's object
AggregateCursor
AggregateOperation
Collection is the collection on which the operation is performed In case of admin/diagnostic pipeline which does not require an underlying collection, the db parameter must be passed instead.
AggregateOptions
AggregationExpr
Aggregation expression
AggregationPipelineBuilder
Aggregation pipeline builder
AggregationStage
Aggregation stage base
And
$and operator
ArrayElemAt
$arrayElemAt operator
ArrayToObject
$arrayToObject operator
Avg
$avg operator
Box
https://docs.mongodb.com/manual/reference/operator/query/box/#mongodb-query-op.-box
BsonBinary
BsonBinaryData
BsonCodec
Bucket
$bucket aggregation stage
BucketAuto
$bucketAuto aggregation stage
Builder
Builder interface
Bulk
BulkWriteResult
Case
Case branch for Switch operator
Ceil
$ceil operator
Center
https://docs.mongodb.com/manual/reference/operator/query/box/#mongodb-query-op.-box
CenterSphere
https://docs.mongodb.com/manual/reference/operator/query/box/#mongodb-query-op.-box
ChangeStreamOperation
ChangeStreamOptions
Parameters for the ChangeStream Operation
ChunkHandler
Cmp
$cmp operator
Codec
CollationOptions
Collation allows users to specify language-specific rules for string comparison, such as rules for lettercase and accent marks. @Since(3.4)
CommandCursor
Concat
$concat operator
ConcatArrays
$concatArrays operator
Cond
$cond operator
Connection
ConnectionManager
ConnectionPool
A connection pool that limits the number of concurrent connections to a MongoDB server.
Const
Constant expression
Convert
$convert operator
Count
$count aggregation stage
CreateCollectionCommand
createCollection command.
CreateCollectionOptions
CreateIndexOperation
CreateIndexOptions
@param {object} options Optional settings. @param {(number|string)} options.writeConcern The write concern. @param {boolean} options.unique=false Creates an unique index. @param {boolean} options.sparse=false Creates a sparse index. @param {boolean} options.background=false Creates the index in the background, yielding whenever possible. @param {boolean} options.dropDups=false A unique index cannot be created on a key that has pre-existing duplicate values. If you would like to create the index anyway, keeping the first document the database indexes and deleting all subsequent documents that have duplicate value @param {number} options.min For geospatial indexes set the lower bound for the co-ordinates. @param {number} options.max For geospatial indexes set the high bound for the co-ordinates. @param {number} options.v Specify the format version of the indexes. @param {number} options.expireAfterSeconds Allows you to expire data on indexes applied to a data (MongoDB 2.2 or higher) @param {string} options.name Override the autogenerated index name (useful if the resulting name is larger than 128 bytes) @param {object} options.partialFilterExpression Creates a partial index based on the given filter object (MongoDB 3.2 or higher) @param {object} options.collation Specify collation (MongoDB 3.4 or higher) settings for update operation (see 3.4 documentation for available fields). @param {ClientSession} options.session optional session to use for this operation
CreateViewCommand
createView command.
CreateViewOptions
Cursor
DateFromParts
$dateFromParts
DateFromString
$dateFromString operator
DateToParts
$dateToParts operator
DayOfMonth
$dayOfMonth operator
DayOfWeek
$dayOfWeek operator
DayOfYear
$dayOfYear operator
Db
DbCollection
DbCommand
DBPointer
DBPointerData
DbRef
DeleteManyOperation
DeleteManyOptions
DeleteManyStatement
DeleteOneOperation
DeleteOneOptions
DeleteOneStatement
Divide
$divide operator
EJsonCodec
Eq
$eq operator
Exp
$exp operator
Expr
$expr operator
Facet
$facet aggregation stage
Field
Field path expression
Filter
$filter operator
FindAndModifyOperation
FindAndModifyOptions
FindAndModifyResult
FindOperation
FindOptions
First
$first operator
Floor
$floor operator
Geometry
https://docs.mongodb.com/manual/reference/operator/query/geometry/#mongodb-query-op.-geometry
GeoNear
$geoNear
GetLastErrorCommand
getLastError command.
Granularity
Granularity for BucketAuto
GraphLookup
$graphLookup
GridFS
GridFSFile
GridIn
GridOut
Group
$group aggregation stage
Gt
$gt operator
Gte
$gte operator
HelloCommand
The Hello command takes the following form:
HelloOptions
Hello command options;
HelloResult
Class representing the output of the Hello command Not all values are represented. If you need something that here is missing use the execute method that returns the original Map document.
Hour
$hour operator
IfNull
$ifNull operator
In
$in operator
IndexOfArray
$indexOfArray operator
IndexOfBytes
$indexOfBytes operator
IndexOfCP
$indexOfCP operator
InsertManyOperation
InsertManyOptions
InsertOneOperation
InsertOneOptions
IsArray
$isArray operator
IsoDateFromParts
ISO date from parts
IsoDayOfWeek
$isoDayOfWeek operator
IsoWeek
$isoWeek operator
IsoWeekYear
$isoWeekYear operator
JsCode
This class is used to store Javascript code
Last
$last operator
LegacyUuid
This class is a convenient way for managing Binary subtype 3 Bson types (Uuid Old). The class holds the content in the format that will be stored in the data base. You can directly create the object with .fromHexString(), or use the format converters for each flavour that have been used As per today, the flavours I'm aware of are: Java legacy, C# legacy and Python legacy. The storing algorithn are the following (found in internet, please confirm me): Standard (subtype 4, not covered from this class): -- From value "00112233-4455-6677-8899-aabbccddeeff" -- To value "00112233-4455-6677-8899-aabbccddeeff" Java: -- From value "00112233-4455-6677-8899-aabbccddeeff" -- To value "77665544-3322-1100-ffee-ddccbbaa9988" C#: -- From value "00112233-4455-6677-8899-aabbccddeeff" -- To value "33221100-5544-7766-8899-aabbccddeeff" Python: -- From value "00112233-4455-6677-8899-aabbccddeeff" -- To value "00112233-4455-6677-8899-aabbccddeeff"
Let
$let operator
Limit
$limit aggregation stage
ListCollectionsCursor
ListIndexesCursor
Literal
Literal expression
Ln
$ln operator
Log
$log operator
Log10
$log10 operator
Lookup
$lookup aggregation stage
Lt
$lt operator
Lte
lte operator
Ltrim
$ltrim operator
MapOp
$map operator
Match
$match aggregation stage
Max
$max operator
MergeObjects
$mergeObjects operator
Millisecond
$millisecond operator
Min
$min operator
Minute
$minute operator
Mod
$mod operator
ModifierBuilder
MongoGetMoreMessage
MongoInsertMessage
MongoKillCursorsMessage
MongoMessage
MongoMessageHandler
MongoQueryMessage
MongoRemoveMessage
MongoReplyMessage
MongoUpdateMessage
Month
$month operator
Multiply
$multiply operator
Ne
$ne operator
Not
$not operator
ObjectCodec
ObjectId
ObjectToArray
$objectToArray
Operator
Basic aggregation operator
Or
$or operator
OrderedBulk
Output
Creates an "output" document for the setWinowsDield stage
PacketConverter
Pow
$pow operator
Project
$project aggregation stage
Push
$push operator
Range
$range operator
ReadPreference
The ReadPreference class is a class that represents a MongoDB ReadPreference and is used to construct connections. @class @param {string} mode A string describing the read preference mode (primary|primaryPreferred|secondary|secondaryPreferred|nearest) @param {array} tags The tags object @param {object} options Additional read preference options @param {number} options.maxStalenessSeconds Max secondary read staleness in seconds, Minimum value is 90 seconds. @see https://docs.mongodb.com/manual/core/read-preference/ @return {ReadPreference}
Reduce
$reduce operator
RegexFind
$regexFind operator
RegexFindAll
$regexFindAll operator
RegexMatch
$regexMatch operator
ReplaceOneOperation
ReplaceOneOptions
ReplaceOneStatement
ReplaceRoot
$replaceRoot aggregation stage
ReplaceWith
$replaceWith aggregation stage
ReverseArray
$reverseArray operator
Round
$round operator
Rtrim
$rtrim operator
SaslContinueCommand
SaslStartCommand
SaslStartOptions
SaslStart command options;
Second
$second operator
SelectorBuilder
SerializationParameters
SerializationRepository
ServerCapabilities
ServerConfig
ServerStatusCommand
ServerStatusOptions
ServerStatus command options;
SetStage
$set aggregation stage
SetWindowFields
$setWindowFields aggregation stage
ShapeOperator
There is
Size
$size operator
Skip
$skip aggregation stage
Slice
$slice operator
Sort
$sort aggregation stage
SortByCount
$sortByCount
Split
$split operator
Sqrt
$sqrt operator
State
StdDevPop
$stdDevPop operator
StdDevSamp
$stdDevSamp operator
StrCaseCmp
$strcasecmp operator
StrLenBytes
$strLenBytes operator
StrLenCP
$strLenCP operator
SubstrBytes
$substrBytes operator
SubstrCP
$substrCP operator
Subtract
$subtract operator
Sum
$sum operator
Switch
$switch operator
Timestamp
ToBool
$toBool operator
ToDate
$toDate operator
ToDecimal
$toDecimal operator
ToDouble
$toDouble operator
ToInt
$toInt operator
ToLong
$toLong operator
ToLower
$toLower operator
ToObjectId
$toObjectId operator
ToString
$toString operator
ToUpper
$toUpper operator
Trim
$trim operator
Trunc
$trunc operator
Type
$type operator
UnionWith
$unionWith aggregation stage
UnorderedBulk
Unset
$unset aggregation stage
Unwind
$unwind aggregation stage
UpdateManyOperation
UpdateManyOptions
UpdateManyStatement
UpdateOneOperation
UpdateOneOptions
UpdateOneStatement
Var
Aggregation expression's variable
Week
$week operator
WriteConcern
WriteConcern control the acknowledgment of write operations with various paramaters.
WriteResult
A wrapper that contains the result status of the mongo shell write methods:
Year
$year operator
Zip
$zip operator

Constants

aggregateChangeStream → const String
all → const SerializationParameters
bsonSerialization → const SerializationParameters
bulkArrayFilters → const String
bulkCollation → const String
bulkDeleteMany → const String
bulkDeleteOne → const String
bulkDocument → const String
bulkDocuments → const String
bulkFilter → const String
bulkHint → const String
bulkHintDocument → const String
bulkInsertMany → const String
bulkInsertOne → const String
bulkReplacement → const String
bulkReplaceOne → const String
bulkUpdate → const String
bulkUpdateMany → const String
bulkUpdateOne → const String
bulkUpsert → const String
ejsonSerialization → const SerializationParameters
key$Query → const String
key_id → const String
keyAdvisoryHostFQDNs → const String
keyAfterClusterTime → const String
keyAggregate → const String
keyAllowDiskUse → const String
keyAllowPartialResult → const String
keyAlternate → const String
keyArbiterOnly → const String
keyArbiters → const String
keyArrayFilters → const String
keyAsserts → const String
keyAuthdb → const String
keyAuthorizedCollections → const String
keyAutoAuthorize → const String
keyAutoIndexId → const String
keyAwaitData → const String
keyBackground → const String
keyBackwards → const String
keyBatchIndex → const String
keyBatchSize → const String
keyBypassDocumentValidation → const String
keyCapped → const String
keyCaseFirst → const String
keyCaseLevel → const String
keyClusterTime → const String
keyCode → const String
keyCodeName → const String
keyColl → const String
keyCollation → const String
keyCollection → const String
keyCommandType → const String
keyComment → const String
keyCompression → const String
keyConnectionId → const String
keyConnections → const String
keyConversationId → const String
keyCount → const String
keyCreate → const String
keyCreateIndexes → const String
keyCreateIndexesArgument → const String
keyCursor → const String
keyCursors → const String
keyCursorsAlive → const String
keyCursorsKilled → const String
keyCursorsNotFound → const String
keyCursorsUnknown → const String
keyDatabaseName → const String
keyDb → const String
keyDbHash → const String
keyDbName → const String
keyDbStats → const String
keyDefaultRWConcern → const String
keyDelete → const String
keyDeleteArgument → const String
keyDeletes → const String
keyDistinct → const String
keyDocuments → const String
keyDrop → const String
keyDropDatabase → const String
keyDropDuplicatedEntries → const String
keyDropIndexes → const String
keyElectionId → const String
keyElectionMetrics → const String
keyErrmsg → const String
keyExpireAfterSeconds → const String
keyExplain → const String
keyExtraInfo → const String
keyFeatureCompatibilityVersion → const String
keyFieldHash → const String
keyFields → const String
keyFilter → const String
keyFind → const String
keyFindAndModify → const String
keyFirstBatch → const String
keyFlowControl → const String
keyFormatVersion → const String
keyFreeMonitoring → const String
keyFsync → const String
keyFull → const String
keyFullDocument → const String
keyGeoHighBound → const String
keyGeoLowerBound → const String
keyGetLastError → const String
keyGetMore → const String
keyGetParameter → const String
keyGlobalLock → const String
keyHash → const String
keyHedgeOptions → const String
keyHedgingMetrics → const String
keyHello → const String
keyHidden → const String
keyHint → const String
keyHost → const String
keyHosts → const String
keyId → const String
keyIndex → const String
keyIndexName → const String
keyIndexOptionDefaults → const String
keyInsert → const String
keyInsertArgument → const String
keyInsertedCount → const String
keyInsertedId → const String
keyIsWritablePrimary → const String
keyJ → const String
keyKey → const String
keyKeyId → const String
keyKeys → const String
keyKillCursors → const String
keyLastErrorObject → const String
keyLastWrite → const String
keyLatchAnalysis → const String
keyLevel → const String
keyLimit → const String
keyListCollections → const String
keyListIndexes → const String
keyLocale → const String
keyLocalTime → const String
keyLocks → const String
keyLog → const String
keyLogicalSessionRecordCache → const String
keyLogicalSessionTimeoutMinutes → const String
keyLogLevel → const String
keyMax → const String
keyMaxAwaitTimeMS → const String
keyMaxBsonObjectSize → const String
keyMaximumLogFileSize → const String
keyMaxMessageSizeBytes → const String
keyMaxStalenessSecond → const String
keyMaxTimeMS → const String
keyMaxVariable → const String
keyMaxWireVersion → const String
keyMaxWriteBatchSize → const String
keyMe → const String
keyMechanism → const String
keyMem → const String
keyMetrics → const String
keyMin → const String
keyMinWireVersion → const String
keyMirroredReads → const String
keyMode → const String
keyMsg → const String
keyMulti → const String
keyN → const String
keyName → const String
keyNameOnly → const String
keyNetwork → const String
keyNew → const String
keyNextBatch → const String
keyNModified → const String
keyNoCursorTimeout → const String
keyNormalization → const String
keyNs → const String
keyNumericOrdering → const String
keyOk → const String
keyOpcounters → const String
keyOpcountersRepl → const String
keyOperationInputIndex → const String
keyOperationInternalIndex → const String
keyOperationTime → const String
keyOperationType → const String
keyOpLatencies → const String
keyOplogReplay → const String
keyOplogTruncation → const String
keyOpReadConcernCounters → const String
keyOps → const String
keyOptions → const String
keyOpWriteConcernCounters → const String
keyOrderby → const String
keyOrdered → const String
keyParameter → const String
keyPartialFilterExpression → const String
keyPartialResultsReturned → const String
keyPassive → const String
keyPassives → const String
keyPayload → const String
keyPersistent → const String
keyPid → const String
keyPipeline → const String
keyPreference → const String
keyPrimary → const String
keyProcess → const String
keyProjection → const String
keyProvenance → const String
keyQ → const String
keyQuery → const String
keyReadConcern → const String
keyReadOnly → const String
keyReadPreference → const String
keyReadPreferenceTags → const String
keyRemove → const String
keyRepl → const String
keyResult → const String
keyResumeAfter → const String
keyReturnKey → const String
keySaslContinue → const String
keySaslStart → const String
keySaslSupportedMechs → const String
keyScaleFactor → const String
keySecondary → const String
keySecurity → const String
keyServerStatus → const String
keySession → const String
keySetName → const String
keySetVersion → const String
keyShardedIndexConsistency → const String
keySharding → const String
keyShardingStatistics → const String
keyShowRecordId → const String
keySingleBatch → const String
keySize → const String
keySkip → const String
keySkipEmptyExchange → const String
keySort → const String
keySparseIndex → const String
keyStartAfter → const String
keyStartAtOperationTime → const String
keysToOmit → const Set
keyStorageEngine → const String
keyStrength → const String
keyTags → const String
keyTailable → const String
keyTopologyVersion → const String
keyTotalSize → const String
keyTransactions → const String
keyTransportSecurity → const String
keyU → const String
keyUniqueIndex → const String
keyUpdate → const String
keyUpdateArgument → const String
keyUpdatedExisting → const String
keyUpdates → const String
keyUpsert → const String
keyUpserted → const String
keyUptime → const String
keyUptimeEstimate → const String
keyUptimeMillis → const String
keyValidationAction → const String
keyValidationLevel → const String
keyValidator → const String
keyValue → const String
keyValues → const String
keyVersion → const String
keyViewOn → const String
keyW → const String
keyWatchdog → const String
keyWiredTiger → const String
keyWriteBacksQueued → const String
keyWriteConcern → const String
keyWriteConcernError → const String
keyWriteError → const String
keyWriteErrors → const String
keyWtimeout → const String
noObjects → const SerializationParameters
noSecureRequestError → const String
objectSerialization → const SerializationParameters
type$binary → const String
type$code → const String
type$customData → const String
type$customId → const String
type$date → const String
type$db → const String
type$dbPointer → const String
type$decimal128 → const String
type$double → const String
type$id → const String
type$int32 → const String
type$int64 → const String
type$maxKey → const String
type$mcustomId → const String
type$minKey → const String
type$objectId → const String
type$ref → const String
type$regex → const String
type$symbol → const String
type$timestamp → const String
type$uuid → const String

Properties

charMatcherRegExp RegExp
final
modify ModifierBuilder
no setter
where SelectorBuilder
no setter

Functions

getReadPreferenceModeFromString(String mode) ReadPreferenceMode
getReadPreferenceModeString(ReadPreferenceMode mode) String
parseIndexOptions(Object fieldOrSpec) Map<String, Object>
resolveReadPreference(dynamic parent, Map<String, Object> options, {bool? inheritReadPreference = true}) ReadPreference?
Resolves a read preference based on well-defined inheritance rules. This method will not only determine the read preference (if there is one), but will also ensure the returned value is a properly constructed instance of ReadPreference.

Typedefs

BsonConstructor<T> = T Function(Map<String, dynamic>)
DbFactory = FutureOr<Db> Function()
A function that produces an instance of Db, whether synchronously or asynchronously.
MonadicBlock = void Function(Map<String, dynamic> value)

Exceptions / Errors

ConnectionException
MongoDartError