Class: MongoDriver
#
HierarchyDatabaseDriver<MongoConnection>
↳ MongoDriver
#
Implements- IDatabaseDriver<MongoConnection>
#
Constructors#
constructor+ new MongoDriver(config
: Configuration): MongoDriver
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:15
#
Parameters:Name | Type |
---|---|
config | Configuration |
Returns: MongoDriver
#
Properties#
[EntityManagerType]• [EntityManagerType]: MongoEntityManager<this>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:12
#
comparator• Protected
comparator: EntityComparator
Inherited from AbstractSqlDriver.comparator
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:19
#
config• Protected
Readonly
config: Configuration
Inherited from AbstractSqlDriver.config
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:12
#
connection• Protected
Readonly
connection: MongoConnection = new MongoConnection(this.config)
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:14
#
dependencies• Protected
Readonly
dependencies: string[]
Inherited from AbstractSqlDriver.dependencies
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:13
#
logger• Protected
Readonly
logger: Logger
Inherited from AbstractSqlDriver.logger
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:18
#
metadata• Protected
metadata: MetadataStorage
Inherited from AbstractSqlDriver.metadata
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:20
#
platform• Protected
Readonly
platform: MongoPlatform = new MongoPlatform()
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:15
#
replicas• Protected
Readonly
replicas: MongoConnection[]
Inherited from MongoDriver.replicas
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:16
#
Methods#
aggregateâ–¸ aggregate(entityName
: string, pipeline
: any[], ctx?
: Transaction<ClientSession>): Promise<any[]>
Overrides AbstractSqlDriver.aggregate
Defined in packages/mongodb/src/MongoDriver.ts:86
#
Parameters:Name | Type |
---|---|
entityName | string |
pipeline | any[] |
ctx? | Transaction<ClientSession> |
Returns: Promise<any[]>
#
buildFieldsâ–¸ Private
buildFields<T>(entityName
: string, populate
: PopulateOptions<T>[], fields?
: string[]): string[] | undefined
Defined in packages/mongodb/src/MongoDriver.ts:273
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
entityName | string |
populate | PopulateOptions<T>[] |
fields? | string[] |
Returns: string[] | undefined
#
buildFilterByIdâ–¸ Private
buildFilterById<T>(entityName
: string, id
: string): FilterQuery<T>
Defined in packages/mongodb/src/MongoDriver.ts:263
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
entityName | string |
id | string |
Returns: FilterQuery<T>
#
closeâ–¸ close(force?
: boolean): Promise<void>
Inherited from AbstractSqlDriver.close
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:38
#
Parameters:Name | Type |
---|---|
force? | boolean |
Returns: Promise<void>
#
connectâ–¸ connect(): Promise<MongoConnection>
Inherited from AbstractSqlDriver.connect
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:35
Returns: Promise<MongoConnection>
#
convertExceptionâ–¸ convertException(exception
: Error): DriverException
Inherited from AbstractSqlDriver.convertException
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:56
inheritdoc
#
Parameters:Name | Type |
---|---|
exception | Error |
Returns: DriverException
#
convertObjectIdsâ–¸ Private
convertObjectIds<T>(data
: T): T
Defined in packages/mongodb/src/MongoDriver.ts:241
#
Type parameters:Name | Type |
---|---|
T | ObjectId | Dictionary | any[] |
#
Parameters:Name | Type |
---|---|
data | T |
Returns: T
#
countâ–¸ count<T>(entityName
: string, where
: FilterQuery<T>, options?
: CountOptions<T>, ctx?
: Transaction<ClientSession>): Promise<number>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:45
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type | Default value |
---|---|---|
entityName | string | - |
where | FilterQuery<T> | - |
options | CountOptions<T> | {} |
ctx? | Transaction<ClientSession> | - |
Returns: Promise<number>
#
createCollectionsâ–¸ createCollections(): Promise<void>
Defined in packages/mongodb/src/MongoDriver.ts:90
Returns: Promise<void>
#
createEntityManagerâ–¸ createEntityManager<D>(useContext?
: boolean): D[typeof EntityManagerType]
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:21
#
Type parameters:Name | Type | Default |
---|---|---|
D | IDatabaseDriver | IDatabaseDriver |
#
Parameters:Name | Type |
---|---|
useContext? | boolean |
Returns: D[typeof EntityManagerType]
#
createIndexesâ–¸ Private
createIndexes(meta
: EntityMetadata): Promise<string>[]
Defined in packages/mongodb/src/MongoDriver.ts:132
#
Parameters:Name | Type |
---|---|
meta | EntityMetadata |
Returns: Promise<string>[]
#
createPropertyIndexesâ–¸ Private
createPropertyIndexes(meta
: EntityMetadata, prop
: EntityProperty, type
: "index" | "unique"): Promise<string>[]
Defined in packages/mongodb/src/MongoDriver.ts:176
#
Parameters:Name | Type |
---|---|
meta | EntityMetadata |
prop | EntityProperty |
type | "index" | "unique" |
Returns: Promise<string>[]
#
createReplicasâ–¸ Protected
createReplicas(cb
: (c: ConnectionOptions) => MongoConnection): MongoConnection[]
Inherited from AbstractSqlDriver.createReplicas
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:47
#
Parameters:Name | Type |
---|---|
cb | (c: ConnectionOptions) => MongoConnection |
Returns: MongoConnection[]
#
createUniqueIndexesâ–¸ Private
createUniqueIndexes(meta
: EntityMetadata): Promise<string>[]
Defined in packages/mongodb/src/MongoDriver.ts:161
#
Parameters:Name | Type |
---|---|
meta | EntityMetadata |
Returns: Promise<string>[]
#
dropCollectionsâ–¸ dropCollections(): Promise<void>
Defined in packages/mongodb/src/MongoDriver.ts:104
Returns: Promise<void>
#
ensureIndexesâ–¸ ensureIndexes(): Promise<void>
Overrides AbstractSqlDriver.ensureIndexes
Defined in packages/mongodb/src/MongoDriver.ts:115
Returns: Promise<void>
#
findâ–¸ find<T>(entityName
: string, where
: FilterQuery<T>, options?
: FindOptions<T>, ctx?
: Transaction<ClientSession>): Promise<EntityData<T>[]>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:25
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type | Default value |
---|---|---|
entityName | string | - |
where | FilterQuery<T> | - |
options | FindOptions<T> | {} |
ctx? | Transaction<ClientSession> | - |
Returns: Promise<EntityData<T>[]>
#
findOneâ–¸ findOne<T>(entityName
: string, where
: FilterQuery<T>, options?
: FindOneOptions<T>, ctx?
: Transaction<ClientSession>): Promise<EntityData<T> | null>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:33
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type | Default value |
---|---|---|
entityName | string | - |
where | FilterQuery<T> | - |
options | FindOneOptions<T> | { populate: [], orderBy: {} } |
ctx? | Transaction<ClientSession> | - |
Returns: Promise<EntityData<T> | null>
#
getConnectionâ–¸ getConnection(type?
: "read" | "write"): MongoConnection
Inherited from AbstractSqlDriver.getConnection
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:37
#
Parameters:Name | Type |
---|---|
type? | "read" | "write" |
Returns: MongoConnection
#
getDependenciesâ–¸ getDependencies(): string[]
Inherited from AbstractSqlDriver.getDependencies
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:41
Returns: string[]
#
getPivotInversePropertyâ–¸ Protected
getPivotInverseProperty(prop
: EntityProperty): EntityProperty
Inherited from AbstractSqlDriver.getPivotInverseProperty
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:46
#
Parameters:Name | Type |
---|---|
prop | EntityProperty |
Returns: EntityProperty
#
getPivotOrderByâ–¸ Protected
getPivotOrderBy(prop
: EntityProperty, orderBy?
: QueryOrderMap): QueryOrderMap
Inherited from AbstractSqlDriver.getPivotOrderBy
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:44
#
Parameters:Name | Type |
---|---|
prop | EntityProperty |
orderBy? | QueryOrderMap |
Returns: QueryOrderMap
#
getPlatformâ–¸ getPlatform(): Platform
Inherited from MongoDriver.getPlatform
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:39
Returns: Platform
#
getPrimaryKeyFieldsâ–¸ Protected
getPrimaryKeyFields(entityName
: string): string[]
Inherited from AbstractSqlDriver.getPrimaryKeyFields
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:45
#
Parameters:Name | Type |
---|---|
entityName | string |
Returns: string[]
#
inlineEmbeddablesâ–¸ Protected
inlineEmbeddables<T>(meta
: EntityMetadata<T>, data
: T, where?
: boolean): void
Inherited from AbstractSqlDriver.inlineEmbeddables
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:43
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
meta | EntityMetadata<T> |
data | T |
where? | boolean |
Returns: void
#
loadFromPivotTableâ–¸ loadFromPivotTable<T, O>(prop
: EntityProperty, owners
: Primary<O>[][], where?
: FilterQuery<T>, orderBy?
: QueryOrderMap, ctx?
: Transaction): Promise<Dictionary<T[]>>
Inherited from MongoDriver.loadFromPivotTable
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:32
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
O | AnyEntity<O> |
#
Parameters:Name | Type |
---|---|
prop | EntityProperty |
owners | Primary<O>[][] |
where? | FilterQuery<T> |
orderBy? | QueryOrderMap |
ctx? | Transaction |
Returns: Promise<Dictionary<T[]>>
#
lockPessimisticâ–¸ lockPessimistic<T>(entity
: T, mode
: LockMode, ctx?
: Transaction): Promise<void>
Inherited from MongoDriver.lockPessimistic
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:48
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
entity | T |
mode | LockMode |
ctx? | Transaction |
Returns: Promise<void>
#
mapResultâ–¸ mapResult<T>(result
: EntityData<T>, meta
: EntityMetadata<T>, populate?
: PopulateOptions<T>[]): EntityData<T> | null
Inherited from MongoDriver.mapResult
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:34
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
result | EntityData<T> |
meta | EntityMetadata<T> |
populate? | PopulateOptions<T>[] |
Returns: EntityData<T> | null
#
nativeDeleteâ–¸ nativeDelete<T>(entityName
: string, where
: FilterQuery<T>, ctx?
: Transaction<ClientSession>): Promise<QueryResult>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:76
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
entityName | string |
where | FilterQuery<T> |
ctx? | Transaction<ClientSession> |
Returns: Promise<QueryResult>
#
nativeInsertâ–¸ nativeInsert<T>(entityName
: string, data
: EntityData<T>, ctx?
: Transaction<ClientSession>): Promise<QueryResult>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:50
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
entityName | string |
data | EntityData<T> |
ctx? | Transaction<ClientSession> |
Returns: Promise<QueryResult>
#
nativeInsertManyâ–¸ nativeInsertMany<T>(entityName
: string, data
: EntityData<T>[], ctx?
: Transaction<ClientSession>, processCollections?
: boolean): Promise<QueryResult>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:55
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type | Default value |
---|---|---|
entityName | string | - |
data | EntityData<T>[] | - |
ctx? | Transaction<ClientSession> | - |
processCollections | boolean | true |
Returns: Promise<QueryResult>
#
nativeUpdateâ–¸ nativeUpdate<T>(entityName
: string, where
: FilterQuery<T>, data
: EntityData<T>, ctx?
: Transaction<ClientSession>): Promise<QueryResult>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:60
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
entityName | string |
where | FilterQuery<T> |
data | EntityData<T> |
ctx? | Transaction<ClientSession> |
Returns: Promise<QueryResult>
#
nativeUpdateManyâ–¸ nativeUpdateMany<T>(entityName
: string, where
: FilterQuery<T>[], data
: EntityData<T>[], ctx?
: Transaction<ClientSession>, processCollections?
: boolean): Promise<QueryResult>
Overrides void
Defined in packages/mongodb/src/MongoDriver.ts:71
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
entityName | string |
where | FilterQuery<T>[] |
data | EntityData<T>[] |
ctx? | Transaction<ClientSession> |
processCollections? | boolean |
Returns: Promise<QueryResult>
#
reconnectâ–¸ reconnect(): Promise<MongoConnection>
Inherited from AbstractSqlDriver.reconnect
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:36
Returns: Promise<MongoConnection>
#
renameFieldsâ–¸ Private
renameFields<T>(entityName
: string, data
: T, where?
: boolean): T
Defined in packages/mongodb/src/MongoDriver.ts:190
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type | Default value |
---|---|---|
entityName | string | - |
data | T | - |
where | boolean | false |
Returns: T
#
rethrowâ–¸ Protected
rethrow<T>(promise
: Promise<T>): Promise<T>
Inherited from AbstractSqlDriver.rethrow
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:57
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
promise | Promise<T> |
Returns: Promise<T>
#
setMetadataâ–¸ setMetadata(metadata
: MetadataStorage): void
Inherited from AbstractSqlDriver.setMetadata
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:40
#
Parameters:Name | Type |
---|---|
metadata | MetadataStorage |
Returns: void
#
shouldHaveColumnâ–¸ shouldHaveColumn<T>(prop
: EntityProperty<T>, populate
: PopulateOptions<T>[]): boolean
Overrides AbstractSqlDriver.shouldHaveColumn
Defined in packages/mongodb/src/MongoDriver.ts:287
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
prop | EntityProperty<T> |
populate | PopulateOptions<T>[] |
Returns: boolean
#
syncCollectionâ–¸ syncCollection<T, O>(coll
: Collection<T, O>, ctx?
: Transaction): Promise<void>
Inherited from MongoDriver.syncCollection
Defined in packages/core/dist/drivers/DatabaseDriver.d.ts:33
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
O | AnyEntity<O> |
#
Parameters:Name | Type |
---|---|
coll | Collection<T, O> |
ctx? | Transaction |
Returns: Promise<void>