Class: EventBusService
Can keep track of multiple subscribers to different events and run the subscribers when events happen. Events will run asynchronously.
Constructors
constructor
• new EventBusService(__namedParameters
Copy to Clipboard, config
Copy to Clipboard, singleton?
Copy to Clipboard)
Parameters
Name | Type | Default value |
---|---|---|
__namedParameters Copy to Clipboard | InjectedDependencies Copy to Clipboard | undefined Copy to Clipboard |
config Copy to Clipboard | ConfigModule Copy to Clipboard | undefined Copy to Clipboard |
singleton Copy to Clipboard | boolean Copy to Clipboard | true Copy to Clipboard |
Defined in
packages/medusa/src/services/event-bus.ts:80
Properties
config_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard config_: ConfigModule
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:64
enqueue_
• Protected
Copy to Clipboard enqueue_: Promise
Copy to Clipboard<void
Copy to Clipboard>
Defined in
packages/medusa/src/services/event-bus.ts:78
eventToSubscribersMap_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard eventToSubscribersMap_: Map
Copy to Clipboard<string
Copy to Clipboard | symbol
Copy to Clipboard, SubscriberDescriptor
Copy to Clipboard[]>
Defined in
packages/medusa/src/services/event-bus.ts:69
jobSchedulerService_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard jobSchedulerService_: default
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:68
logger_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard logger_: Logger
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:66
manager_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard manager_: EntityManager
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:65
queue_
• Protected
Copy to Clipboard queue_: Bull
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:75
redisClient_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard redisClient_: Redis
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:73
redisSubscriber_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard redisSubscriber_: Redis
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:74
shouldEnqueuerRun
• Protected
Copy to Clipboard shouldEnqueuerRun: boolean
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:76
stagedJobRepository_
• Protected
Copy to Clipboard Readonly
Copy to Clipboard stagedJobRepository_: typeof StagedJobRepository
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:67
transactionManager_
• Protected
Copy to Clipboard transactionManager_: undefined
Copy to Clipboard | EntityManager
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:77
Methods
createCronJob
▸ createCronJob<T
Copy to Clipboard>(eventName
Copy to Clipboard, data
Copy to Clipboard, cron
Copy to Clipboard, handler
Copy to Clipboard, options?
Copy to Clipboard): Promise
Copy to Clipboard<void
Copy to Clipboard>
Registers a cron job.
Deprecated
Copy to Clipboard
All cron job logic has been refactored to the JobSchedulerService
Copy to Clipboard. This method will be removed in a future release.
Type parameters
Name |
---|
T Copy to Clipboard |
Parameters
Name | Type | Description |
---|---|---|
eventName Copy to Clipboard | string Copy to Clipboard | the name of the event |
data Copy to Clipboard | T Copy to Clipboard | the data to be sent with the event |
cron Copy to Clipboard | string Copy to Clipboard | the cron pattern |
handler Copy to Clipboard | Subscriber Copy to Clipboard<unknown Copy to Clipboard> | the handler to call on each cron job |
options? Copy to Clipboard | CreateJobOptions Copy to Clipboard | - |
Returns
Promise
Copy to Clipboard<void
Copy to Clipboard>
void
Defined in
packages/medusa/src/services/event-bus.ts:463
emit
▸ emit<T
Copy to Clipboard>(data
Copy to Clipboard): Promise
Copy to Clipboard<void
Copy to Clipboard | StagedJob
Copy to Clipboard[]>
Calls all subscribers when an event occurs.
Type parameters
Name |
---|
T Copy to Clipboard |
Parameters
Name | Type | Description |
---|---|---|
data Copy to Clipboard | EmitData Copy to Clipboard<T Copy to Clipboard>[] | The data to use to process the events |
Returns
Promise
Copy to Clipboard<void
Copy to Clipboard | StagedJob
Copy to Clipboard[]>
the jobs from our queue
Defined in
packages/medusa/src/services/event-bus.ts:228
▸ emit<T
Copy to Clipboard>(eventName
Copy to Clipboard, data
Copy to Clipboard, options?
Copy to Clipboard): Promise
Copy to Clipboard<void
Copy to Clipboard | StagedJob
Copy to Clipboard>
Calls all subscribers when an event occurs.
Type parameters
Name |
---|
T Copy to Clipboard |
Parameters
Name | Type | Description |
---|---|---|
eventName Copy to Clipboard | string Copy to Clipboard | the name of the event to be process. |
data Copy to Clipboard | T Copy to Clipboard | the data to send to the subscriber. |
options? Copy to Clipboard | any Copy to Clipboard | options to add the job with |
Returns
Promise
Copy to Clipboard<void
Copy to Clipboard | StagedJob
Copy to Clipboard>
the job from our queue
Defined in
packages/medusa/src/services/event-bus.ts:237
enqueuer_
▸ enqueuer_(): Promise
Copy to Clipboard<void
Copy to Clipboard>
Returns
Promise
Copy to Clipboard<void
Copy to Clipboard>
Defined in
packages/medusa/src/services/event-bus.ts:324
startEnqueuer
▸ startEnqueuer(): void
Copy to Clipboard
Returns
void
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:314
stopEnqueuer
▸ stopEnqueuer(): Promise
Copy to Clipboard<void
Copy to Clipboard>
Returns
Promise
Copy to Clipboard<void
Copy to Clipboard>
Defined in
packages/medusa/src/services/event-bus.ts:319
subscribe
▸ subscribe(event
Copy to Clipboard, subscriber
Copy to Clipboard, context?
Copy to Clipboard): EventBusService
Copy to Clipboard
Adds a function to a list of event subscribers.
Parameters
Name | Type | Description |
---|---|---|
event Copy to Clipboard | string Copy to Clipboard | symbol Copy to Clipboard | the event that the subscriber will listen for. |
subscriber Copy to Clipboard | Subscriber Copy to Clipboard<unknown Copy to Clipboard> | the function to be called when a certain event |
context? Copy to Clipboard | SubscriberContext Copy to Clipboard | context to use when attaching subscriber happens. Subscribers must return a Promise. |
Returns
EventBusService
Copy to Clipboard
this
Defined in
packages/medusa/src/services/event-bus.ts:160
unsubscribe
▸ unsubscribe(event
Copy to Clipboard, subscriber
Copy to Clipboard): EventBusService
Copy to Clipboard
Adds a function to a list of event subscribers.
Parameters
Name | Type | Description |
---|---|---|
event Copy to Clipboard | string Copy to Clipboard | symbol Copy to Clipboard | the event that the subscriber will listen for. |
subscriber Copy to Clipboard | Subscriber Copy to Clipboard<unknown Copy to Clipboard> | the function to be called when a certain event happens. Subscribers must return a Promise. |
Returns
EventBusService
Copy to Clipboard
this
Defined in
packages/medusa/src/services/event-bus.ts:203
withTransaction
▸ withTransaction(transactionManager
Copy to Clipboard): EventBusService
Copy to Clipboard
Parameters
Name | Type |
---|---|
transactionManager Copy to Clipboard | any Copy to Clipboard |
Returns
EventBusService
Copy to Clipboard
Defined in
packages/medusa/src/services/event-bus.ts:128
worker_
▸ worker_<T
Copy to Clipboard>(job
Copy to Clipboard): Promise
Copy to Clipboard<unknown
Copy to Clipboard>
Handles incoming jobs.
Type parameters
Name |
---|
T Copy to Clipboard |
Parameters
Name | Type | Description |
---|---|---|
job Copy to Clipboard | BullJob Copy to Clipboard<T Copy to Clipboard> | The job object |
Returns
Promise
Copy to Clipboard<unknown
Copy to Clipboard>
resolves to the results of the subscriber calls.