feat: Broadcast identifier for removed related entities (#9913)

* Initial commit

* Pending changes exported from your codespace

* Revert changes

* Fix format
This commit is contained in:
Philipp Dyck 2023-04-06 08:13:16 +02:00 committed by GitHub
parent af4f15c5aa
commit f530811b0d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 30 additions and 6 deletions

View File

@ -261,6 +261,7 @@ export class SubjectExecutor {
subject.metadata,
subject.entity!,
subject.databaseEntity,
subject.identifier,
),
)
if (this.softRemoveSubjects.length)
@ -270,6 +271,7 @@ export class SubjectExecutor {
subject.metadata,
subject.entity!,
subject.databaseEntity,
subject.identifier,
),
)
if (this.recoverSubjects.length)
@ -279,6 +281,7 @@ export class SubjectExecutor {
subject.metadata,
subject.entity!,
subject.databaseEntity,
subject.identifier,
),
)
return result
@ -317,6 +320,7 @@ export class SubjectExecutor {
subject.metadata,
subject.entity!,
subject.databaseEntity,
subject.identifier,
),
)
if (this.softRemoveSubjects.length)
@ -326,6 +330,7 @@ export class SubjectExecutor {
subject.metadata,
subject.entity!,
subject.databaseEntity,
subject.identifier,
),
)
if (this.recoverSubjects.length)
@ -335,6 +340,7 @@ export class SubjectExecutor {
subject.metadata,
subject.entity!,
subject.databaseEntity,
subject.identifier,
),
)
return result

View File

@ -214,6 +214,7 @@ export class Broadcaster {
metadata: EntityMetadata,
entity?: ObjectLiteral,
databaseEntity?: ObjectLiteral,
identifier?: ObjectLiteral,
): void {
if (entity && metadata.beforeRemoveListeners.length) {
metadata.beforeRemoveListeners.forEach((listener) => {
@ -239,7 +240,9 @@ export class Broadcaster {
entity: entity,
metadata: metadata,
databaseEntity: databaseEntity,
entityId: metadata.getEntityIdMixedMap(databaseEntity),
entityId: metadata.getEntityIdMixedMap(
databaseEntity ?? identifier,
),
})
if (executionResult instanceof Promise)
result.promises.push(executionResult)
@ -262,6 +265,7 @@ export class Broadcaster {
metadata: EntityMetadata,
entity?: ObjectLiteral,
databaseEntity?: ObjectLiteral,
identifier?: ObjectLiteral,
): void {
if (entity && metadata.beforeSoftRemoveListeners.length) {
metadata.beforeSoftRemoveListeners.forEach((listener) => {
@ -287,7 +291,9 @@ export class Broadcaster {
entity: entity,
metadata: metadata,
databaseEntity: databaseEntity,
entityId: metadata.getEntityIdMixedMap(databaseEntity),
entityId: metadata.getEntityIdMixedMap(
databaseEntity ?? identifier,
),
})
if (executionResult instanceof Promise)
result.promises.push(executionResult)
@ -310,6 +316,7 @@ export class Broadcaster {
metadata: EntityMetadata,
entity?: ObjectLiteral,
databaseEntity?: ObjectLiteral,
identifier?: ObjectLiteral,
): void {
if (entity && metadata.beforeRecoverListeners.length) {
metadata.beforeRecoverListeners.forEach((listener) => {
@ -335,7 +342,9 @@ export class Broadcaster {
entity: entity,
metadata: metadata,
databaseEntity: databaseEntity,
entityId: metadata.getEntityIdMixedMap(databaseEntity),
entityId: metadata.getEntityIdMixedMap(
databaseEntity ?? identifier,
),
})
if (executionResult instanceof Promise)
result.promises.push(executionResult)
@ -577,6 +586,7 @@ export class Broadcaster {
metadata: EntityMetadata,
entity?: ObjectLiteral,
databaseEntity?: ObjectLiteral,
identifier?: ObjectLiteral,
): void {
if (entity && metadata.afterRemoveListeners.length) {
metadata.afterRemoveListeners.forEach((listener) => {
@ -602,7 +612,9 @@ export class Broadcaster {
entity: entity,
metadata: metadata,
databaseEntity: databaseEntity,
entityId: metadata.getEntityIdMixedMap(databaseEntity),
entityId: metadata.getEntityIdMixedMap(
databaseEntity ?? identifier,
),
})
if (executionResult instanceof Promise)
result.promises.push(executionResult)
@ -625,6 +637,7 @@ export class Broadcaster {
metadata: EntityMetadata,
entity?: ObjectLiteral,
databaseEntity?: ObjectLiteral,
identifier?: ObjectLiteral,
): void {
if (entity && metadata.afterSoftRemoveListeners.length) {
metadata.afterSoftRemoveListeners.forEach((listener) => {
@ -650,7 +663,9 @@ export class Broadcaster {
entity: entity,
metadata: metadata,
databaseEntity: databaseEntity,
entityId: metadata.getEntityIdMixedMap(databaseEntity),
entityId: metadata.getEntityIdMixedMap(
databaseEntity ?? identifier,
),
})
if (executionResult instanceof Promise)
result.promises.push(executionResult)
@ -673,6 +688,7 @@ export class Broadcaster {
metadata: EntityMetadata,
entity?: ObjectLiteral,
databaseEntity?: ObjectLiteral,
identifier?: ObjectLiteral,
): void {
if (entity && metadata.afterRecoverListeners.length) {
metadata.afterRecoverListeners.forEach((listener) => {
@ -698,7 +714,9 @@ export class Broadcaster {
entity: entity,
metadata: metadata,
databaseEntity: databaseEntity,
entityId: metadata.getEntityIdMixedMap(databaseEntity),
entityId: metadata.getEntityIdMixedMap(
databaseEntity ?? identifier,
),
})
if (executionResult instanceof Promise)
result.promises.push(executionResult)