diff --git a/src/index.d.ts b/src/index.d.ts index 916d1f6..1c866cc 100644 --- a/src/index.d.ts +++ b/src/index.d.ts @@ -7,9 +7,9 @@ declare namespace AppsScriptJobqueue { /** * Set the following function objects globally in your application that uses JobBroker * ex) - * const jobEventHandler = JobBroker.jobEventHandler; + * const jobEventHandler = JobBroker.consumeJob; */ - jobEventHandler: (event: TimeBasedEvent) => void; + consumeJob: (event: TimeBasedEvent) => void; } interface _JobBroker { diff --git a/src/index.ts b/src/index.ts index 2114b8b..50e18a6 100644 --- a/src/index.ts +++ b/src/index.ts @@ -7,10 +7,11 @@ declare const global: { /** * handler to execute the job. - * @param event Time-based event + * @param {TimeBasedEvent} event Time-based event */ const jobEventHandler = (event: TimeBasedEvent): void => { - new JobBroker(jobEventHandler).consumeJob(event); + const func = global.consumeJob as (event: TimeBasedEvent) => void; + func(event); }; global.jobEventHandler = jobEventHandler; @@ -35,3 +36,11 @@ global.enqueueAsyncJob = ( global.createDelaydJob = (scheduled_at: Date): DelayedJobBroker => { return DelayedJobBroker.createJob(jobEventHandler, scheduled_at); }; + +/** + * Consume job + * @param {TimeBasedEvent} event Time-based event + */ +global.consumeJob = (event: TimeBasedEvent): void => { + new JobBroker(jobEventHandler).consumeJob(event); +};