NotificationService
constructor
Parameters
container
InjectedDependenciesRequiredProperties
__configModule__
Record<string, unknown>__container__
anyRequired__moduleDeclaration__
Record<string, unknown>attachmentGenerator_
unknownRequiredDefault: null
container_
InjectedDependencies & objectRequiredmanager_
EntityManagerRequiredsubscribers_
objectRequiredDefault: {}
transactionManager_
undefined | EntityManagerRequiredAccessors
activeManager_
Returns
EntityManager
EntityManagerRequiredMethods
atomicPhase_
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>RequiredhandleEvent
Handles an event by relaying the event data to the subscribing providers. The result of the notification send will be persisted in the database in order to allow for resends. Will log any errors that are encountered.
Parameters
eventName
stringRequireddata
Record<string, unknown>RequiredReturns
list
Retrieves a list of notifications.
Parameters
Returns
listAndCount
Retrieves a list of notifications and total count.
Parameters
Returns
registerAttachmentGenerator
Registers an attachment generator to the service. The generator can be used to generate on demand invoices or other documents.
Parameters
service
unknownRequiredReturns
void
voidregisterInstalledProviders
Takes a list of notification provider ids and persists them in the database.
Parameters
providerIds
string[]RequiredReturns
Promise
Promise<void>Requiredresend
Resends a notification by retrieving a prior notification and calling the underlying provider's resendNotification method.
Parameters
id
stringRequiredDefault: {}
Returns
retrieve
Retrieves a notification with a given id
Parameters
id
stringRequiredDefault: {}
Returns
retrieveProvider_
Finds a provider with a given id. Will throw a NOT_FOUND error if the resolution fails.
Parameters
id
stringRequiredReturns
AbstractNotificationService
objectRequiredsend
Sends a notification, by calling the given provider's sendNotification method. Persists the Notification in the database.
Parameters
event
stringRequiredeventData
Record<string, unknown>RequiredproviderId
stringRequiredReturns
shouldRetryTransaction_
Parameters
err
Record<string, unknown> | objectRequiredReturns
boolean
booleansubscribe
Subscribes a given provider to an event.
Parameters
eventName
stringRequiredproviderId
stringRequiredReturns
void
voidwithTransaction
Parameters
transactionManager
EntityManagerReturns
NotificationService
objectRequired