basalt / queue/src / QueueDriver
Interface: QueueDriver
Defined in: queue/src/driver.ts:143
Queue driver contract. BullMQ in production; sync in tests/dev.
Properties
capabilities?
> readonly optional capabilities?: DriverCapabilities
Defined in: queue/src/driver.ts:147
What this backend honors — see DriverCapabilities.
name?
> readonly optional name?: string
Defined in: queue/src/driver.ts:145
Short identifier used in diagnostics (e.g. 'bullmq', 'sync').
Methods
add()
> add(queue, jobName, data, options): Promise<void>
Defined in: queue/src/driver.ts:150
Parameters
queue
string
jobName
string
data
unknown
options
Returns
Promise<void>
close()
> close(): Promise<void>
Defined in: queue/src/driver.ts:176
Returns
Promise<void>
list()?
> optional list(queue, options?): Promise<JobSummary[]>
Defined in: queue/src/driver.ts:175
Optional: list individual jobs (basalt queue:jobs) as driver-neutral JobSummary objects — newest first, payload unwrapped from the dispatch envelope via readJobEnvelope.
Omit it when the backend cannot read a job WITHOUT consuming it: faking the capability with a destructive read (an AMQP basic.get, an SQS ReceiveMessage) would make merely looking at a queue change it. The QueueManager then returns undefined and the CLI reports the operation as unsupported — an honest gap beats a dangerous guess.
Parameters
queue
string
options?
Returns
Promise<JobSummary[]>
retryFailed()?
> optional retryFailed(queue, options?): Promise<number>
Defined in: queue/src/driver.ts:163
Optional: re-enqueue failed jobs (basalt queue:retry). Returns how many were retried. limit caps how many are processed (default driver's choice).
Parameters
queue
string
options?
limit?
number
Returns
Promise<number>
setExecutor()
> setExecutor(executor): void
Defined in: queue/src/driver.ts:149
Called once by the QueueManager — how to execute a received job.
Parameters
executor
Returns
void
startWorker()
> startWorker(queue, options?): void
Defined in: queue/src/driver.ts:152
Starts a worker for the queue (no-op in the sync driver: add executes inline).
Parameters
queue
string
options?
concurrency?
number
Returns
void
stats()?
> optional stats(queue): Promise<QueueStats>
Defined in: queue/src/driver.ts:158
Optional: job counts per state, for basalt queue:stats. Backends that cannot introspect (e.g. the inline sync driver) omit it — the CLI then reports the operation as unsupported rather than guessing.
Parameters
queue
string
Returns
Promise<QueueStats>