1
1
import { Inject , Injectable } from '@nestjs/common' ;
2
2
import { DATABASE_DRIVER_FACTORY_TOKEN , DatabaseDriverFactory } from '../driver/database-driver.factory' ;
3
- import { DatabaseDriver } from '../driver/database.driver' ;
3
+ import { DatabaseDriverPersister } from '../driver/database.driver-persister ' ;
4
4
import { InboxOutboxModuleEventOptions , InboxOutboxModuleOptions , MODULE_OPTIONS_TOKEN } from '../inbox-outbox.module-definition' ;
5
5
import { IListener } from '../listener/contract/listener.interface' ;
6
6
import { ListenerDuplicateNameException } from '../listener/exception/listener-duplicate-name.exception' ;
7
7
import { INBOX_OUTBOX_EVENT_PROCESSOR_TOKEN , InboxOutboxEventProcessorContract } from '../processor/inbox-outbox-event-processor.contract' ;
8
8
import { EVENT_CONFIGURATION_RESOLVER_TOKEN , EventConfigurationResolverContract } from '../resolver/event-configuration-resolver.contract' ;
9
9
import { InboxOutboxEvent } from './contract/inbox-outbox-event.interface' ;
10
- import { DatabaseDriverPersister } from '../driver/database.driver-persister' ;
11
10
12
11
export enum TransactionalEventEmitterOperations {
13
12
persist = 'persist' ,
@@ -29,7 +28,7 @@ export class TransactionalEventEmitter {
29
28
event : InboxOutboxEvent ,
30
29
entities : {
31
30
operation : TransactionalEventEmitterOperations ;
32
- entity : any ;
31
+ entity : object ;
33
32
} [ ] ,
34
33
customDatabaseDriverPersister ?: DatabaseDriverPersister ,
35
34
) : Promise < void > {
@@ -42,7 +41,12 @@ export class TransactionalEventEmitter {
42
41
const databaseDriver = this . databaseDriverFactory . create ( this . eventConfigurationResolver ) ;
43
42
const currentTimestamp = new Date ( ) . getTime ( ) ;
44
43
45
- const inboxOutboxTransportEvent = databaseDriver . createInboxOutboxTransportEvent ( event . name , event , currentTimestamp + eventOptions . listeners . expiresAtTTL , currentTimestamp + eventOptions . listeners . readyToRetryAfterTTL ) ;
44
+ const inboxOutboxTransportEvent = databaseDriver . createInboxOutboxTransportEvent (
45
+ event . name ,
46
+ event ,
47
+ currentTimestamp + eventOptions . listeners . expiresAtTTL ,
48
+ currentTimestamp + eventOptions . listeners . readyToRetryAfterTTL ,
49
+ ) ;
46
50
47
51
const persister = customDatabaseDriverPersister ?? databaseDriver ;
48
52
0 commit comments