#
Class: EntityFactorycore.EntityFactory
#
Constructors#
constructor+ new EntityFactory(unitOfWork
: UnitOfWork, em
: EntityManager<IDatabaseDriver<Connection>>): EntityFactory
#
Parameters:Name | Type |
---|---|
unitOfWork | UnitOfWork |
em | EntityManager<IDatabaseDriver<Connection>> |
Returns: EntityFactory
Defined in: packages/core/src/entity/EntityFactory.ts:22
#
Properties#
config• Private
Readonly
config: Configuration<IDatabaseDriver<Connection>>
Defined in: packages/core/src/entity/EntityFactory.ts:19
#
driver• Private
Readonly
driver: IDatabaseDriver<Connection>
Defined in: packages/core/src/entity/EntityFactory.ts:17
#
eventManager• Private
Readonly
eventManager: EventManager
Defined in: packages/core/src/entity/EntityFactory.ts:22
#
hydrator• Private
Readonly
hydrator: IHydrator
Defined in: packages/core/src/entity/EntityFactory.ts:21
#
metadata• Private
Readonly
metadata: MetadataStorage
Defined in: packages/core/src/entity/EntityFactory.ts:20
#
platform• Private
Readonly
platform: Platform
Defined in: packages/core/src/entity/EntityFactory.ts:18
#
Methods#
createâ–¸ create<T, P>(entityName
: EntityName<T>, data
: EntityData<T>, options?
: FactoryOptions): Loaded<T, P>
#
Type parameters:Name | Type | Default |
---|---|---|
T | AnyEntity<T> | - |
P | readonly string[] | readonly keyof T[] | boolean | LoadStrategy | PopulateChildren<T> | any |
#
Parameters:Name | Type |
---|---|
entityName | EntityName<T> |
data | EntityData<T> |
options | FactoryOptions |
Returns: Loaded<T, P>
Defined in: packages/core/src/entity/EntityFactory.ts:27
#
createEntityâ–¸ Private
createEntity<T>(data
: EntityData<T>, meta
: EntityMetadata<T>, options
: FactoryOptions): T
#
Type parameters:Name | Type |
---|---|
T | AnyEntity<T> |
#
Parameters:Name | Type |
---|---|
data | EntityData<T> |
meta | EntityMetadata<T> |
options | FactoryOptions |
Returns: T
Defined in: packages/core/src/entity/EntityFactory.ts:88
#
createReferenceâ–¸ createReference<T>(entityName
: EntityName<T>, id
: Primary<T> | Primary<T>[] | Record<string, Primary<T>>, options?
: Pick<FactoryOptions, convertCustomTypes | merge>): T
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
entityName | EntityName<T> |
id | Primary<T> | Primary<T>[] | Record<string, Primary<T>> |
options | Pick<FactoryOptions, convertCustomTypes | merge> |
Returns: T
Defined in: packages/core/src/entity/EntityFactory.ts:64
#
denormalizePrimaryKeyâ–¸ Private
denormalizePrimaryKey<T>(data
: EntityData<T>, primaryKey
: string, prop
: EntityProperty<T>): void
denormalize PK to value required by driver (e.g. ObjectId)
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
data | EntityData<T> |
primaryKey | string |
prop | EntityProperty<T> |
Returns: void
Defined in: packages/core/src/entity/EntityFactory.ts:153
#
extractConstructorParamsâ–¸ Private
extractConstructorParams<T>(meta
: EntityMetadata<T>, data
: EntityData<T>): T[keyof T][]
returns parameters for entity constructor, creating references from plain ids
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
meta | EntityMetadata<T> |
data | EntityData<T> |
Returns: T[keyof T][]
Defined in: packages/core/src/entity/EntityFactory.ts:171
#
findEntityâ–¸ Private
findEntity<T>(data
: EntityData<T>, meta
: EntityMetadata<T>, convertCustomTypes?
: boolean): undefined | T
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
data | EntityData<T> |
meta | EntityMetadata<T> |
convertCustomTypes? | boolean |
Returns: undefined | T
Defined in: packages/core/src/entity/EntityFactory.ts:118
#
hydrateâ–¸ Private
hydrate<T>(entity
: T, meta
: EntityMetadata<T>, data
: EntityData<T>, options
: FactoryOptions): void
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
entity | T |
meta | EntityMetadata<T> |
data | EntityData<T> |
options | FactoryOptions |
Returns: void
Defined in: packages/core/src/entity/EntityFactory.ts:110
#
processDiscriminatorColumnâ–¸ Private
processDiscriminatorColumn<T>(meta
: EntityMetadata<T>, data
: EntityData<T>): EntityMetadata<T>
#
Type parameters:Name |
---|
T |
#
Parameters:Name | Type |
---|---|
meta | EntityMetadata<T> |
data | EntityData<T> |
Returns: EntityMetadata<T>
Defined in: packages/core/src/entity/EntityFactory.ts:132