Features:
Abstract Task class (Task)
Task Orchestrator (Worker)
class Demo extends AbstractSimpleTask<'demo', {test: string}, string, unknown> {
public readonly type = 'demo';
public trigger: TaskTrigger = {type: 'instant'};
protected buildDescription(): Promise<string> {
return Promise.resolve(`${this.type} ${this.props.test}`);
}
public runTask(): Promise<string> {
return Promise.resolve('demo');
}
}
const worker = new Worker({
taskUniqueIdBuilder: () => uuid(),
// logger: console,
});
const task = await worker.initializeTask(Demo, {test: 'test'}, {}); // arg 1 is task class, arg 2 is current tasks props, arg 3 is common context.
await worker.startTask(task); // optional, waitTask will call startTask if not started yet.
const data = await worker.waitTask(task);
Generated using TypeDoc