EventBusService
Can keep track of multiple subscribers to different events and run the subscribers when events happen. Events will run asynchronously.
constructorβ
Parametersβ
__namedParameters
InjectedDependenciesRequiredisSingleton
booleanRequiredDefault: true
Propertiesβ
manager_
EntityManagerRequiredtransactionManager_
undefined | EntityManagerRequired__container__
anyRequiredshouldEnqueuerRun
booleanRequiredenqueue_
Promise<void>Required__configModule__
Record<string, unknown>__moduleDeclaration__
Record<string, unknown>Accessorsβ
activeManager_β
Returnsβ
EntityManager
EntityManagerRequiredeventBusModuleService_β
Returnsβ
IEventBusModuleService
objectRequiredMethodsβ
shouldRetryTransaction_β
Parametersβ
err
Record<string, unknown> | objectRequiredReturnsβ
boolean
booleanRequiredatomicPhase_β
Wraps some work within a transactional block. If the service already has a transaction manager attached this will be reused, otherwise a new transaction manager is created.
Type Parametersβ
TResult
objectRequiredTError
objectRequiredParametersβ
work
(transactionManager: EntityManager) => Promise<TResult>RequiredisolationOrErrorHandler
IsolationLevel | (error: TError) => Promise<void | TResult>maybeErrorHandlerOrDontFail
(error: TError) => Promise<void | TResult>Returnsβ
Promise
Promise<TResult>RequiredwithTransactionβ
Parametersβ
transactionManager
EntityManagerReturnsβ
this
thisRequiredsubscribeβ
Adds a function to a list of event subscribers.
Parametersβ
event
string | symbolRequiredcontext
SubscriberContextReturnsβ
this
thisRequiredunsubscribeβ
Removes function from the list of event subscribers.
Parametersβ
event
string | symbolRequiredReturnsβ
this
thisRequiredemitβ
**emit**<TypeParameter T>(data): Promise<void \| [StagedJob](/references/entities/classes/StagedJob)[]>
Calls all subscribers when an event occurs.
Type Parametersβ
T
objectRequiredParametersβ
Returnsβ
**emit**<TypeParameter T>(data): Promise<void \| [StagedJob](/references/entities/classes/StagedJob)[]>
Type Parametersβ
T
objectRequiredParametersβ
Returnsβ
**emit**<TypeParameter T>(eventName, data, options?): Promise<void \| [StagedJob](/references/entities/classes/StagedJob)>
Calls all subscribers when an event occurs.
Type Parametersβ
T
objectRequiredParametersβ
eventName
stringRequireddata
TRequiredoptions
Record<string, unknown>Returnsβ
startEnqueuerβ
Returnsβ
void
voidRequiredstopEnqueuerβ
Returnsβ
Promise
Promise<void>Requiredenqueuer_β
Returnsβ
Promise
Promise<void>Required