UNPKG

peanar

Version:

A job queue for Node.js based on RabbitMQ

34 lines (33 loc) 1.05 kB
import { EventEmitter } from "events"; import PeanarApp, { IPeanarRequest, IPeanarJobDefinition } from "./app"; import { Channel } from 'amqplib'; export default class PeanarJob extends EventEmitter { id: string; name: string; args: any[]; handler: (...args: any[]) => Promise<any>; deliveryTag?: bigint; correlationId?: string; channel: Channel; app: PeanarApp; def: IPeanarJobDefinition; attempt: number; max_retries: number; cancelled: boolean; constructor(req: IPeanarRequest, def: IPeanarJobDefinition, app: PeanarApp, channel: Channel); cancel(reason?: Error): void; ack(): void; canRetry(): boolean; reject(ex?: Error & { retry?: boolean; }): Promise<void>; enqueue(): Promise<string>; protected get retry_name(): string; protected get requeue_name(): string; protected _declareRetryQueues(): Promise<void>; retry(): Promise<string>; pauseQueue(): void; resumeQueue(): void; _perform(): Promise<any>; perform(): Promise<unknown>; }