Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Kiwi

Example :

example
let counter = 0;

const queue = new Kiwi(job => {
  counter++;
});

await queue.clear(); //clean previous jobs
await queue.add('foo'); //add job with 'foo' as data
queue.start();
await queue.idle(); //await queue is empty
console.log(await queue.isEmpty()); //check is empty

Hierarchy

  • EventEmitter
    • Kiwi

Index

Constructors

constructor

  • Parameters

    • worker: WorkerFunction

      Async function invoked by kiwi on each job. Should throw an exception if job failed.

    • Optional options: Partial<IOption>

      Configure kiwi queue

    Returns Kiwi

Properties

Protected currentJob

currentJob: IJob | null = null

Protected currentPath

currentPath: string

Protected failPath

failPath: string

Protected idlePath

idlePath: string

inited

inited: Promise<void>

Protected paths

paths: string[]

Protected started

started: boolean = false

Protected successPath

successPath: string

Protected worker

Async function invoked by kiwi on each job. Should throw an exception if job failed.

Static defaultMaxListeners

defaultMaxListeners: number

Static Protected fileId

fileId: number = 0

Static Protected getJobMutex

getJobMutex: Mutex = new Mutex()

Static Protected runJobMutex

runJobMutex: Mutex = new Mutex()

Methods

Protected _clear

  • _clear(): Promise<void>

Protected _init

  • _init(): Promise<void>

add

  • add(data: any): Promise<void>

addListener

  • addListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

Protected cleanJobFile

  • cleanJobFile(job: IJob): Promise<void>

clear

  • clear(): Promise<void>

countIdleJobs

  • countIdleJobs(): Promise<number>

emit

  • emit(event: string | symbol, ...args: any[]): boolean
  • Parameters

    • event: string | symbol
    • Rest ...args: any[]

    Returns boolean

Protected empty

  • empty(folderPath: string): Promise<any>
  • Parameters

    • folderPath: string

    Returns Promise<any>

eventNames

  • eventNames(): Array<string | symbol>
  • Returns Array<string | symbol>

Protected getFilesInCurrentDirectory

  • getFilesInCurrentDirectory(): Promise<string[] | false>

Protected getFilesInDirectory

  • getFilesInDirectory(dir: string): Promise<string[] | false>
  • Parameters

    • dir: string

    Returns Promise<string[] | false>

Protected getFilesInIdleDirectory

  • getFilesInIdleDirectory(): Promise<string[] | false>

getMaxListeners

  • getMaxListeners(): number
  • Returns number

Protected getNextJob

  • getNextJob(): Promise<IJob | false>

Protected getNextJobFilePath

  • getNextJobFilePath(): Promise<string | false>

Protected getUniqueFilename

  • getUniqueFilename(): Promise<string>

idle

  • idle(): Promise<void>

init

  • init(): Promise<void>

isEmpty

  • isEmpty(): Promise<boolean>

listenerCount

  • listenerCount(type: string | symbol): number
  • Parameters

    • type: string | symbol

    Returns number

listeners

  • listeners(event: string | symbol): Function[]
  • Parameters

    • event: string | symbol

    Returns Function[]

Protected log

  • log(level: keyof ILogger, message: string, ...data: any[]): void
  • Parameters

    • level: keyof ILogger
    • message: string
    • Rest ...data: any[]

    Returns void

off

  • off(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

on

  • on(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

Protected onJobFinished

  • onJobFinished(): Promise<void>

once

  • once(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

pause

  • pause(): Promise<void>

prependListener

  • prependListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

prependOnceListener

  • prependOnceListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

rawListeners

  • rawListeners(event: string | symbol): Function[]
  • Parameters

    • event: string | symbol

    Returns Function[]

removeAllListeners

  • removeAllListeners(event?: string | symbol): this
  • Parameters

    • Optional event: string | symbol

    Returns this

removeListener

  • removeListener(event: string | symbol, listener: function): this
  • Parameters

    • event: string | symbol
    • listener: function
        • (...args: any[]): void
        • Parameters

          • Rest ...args: any[]

          Returns void

    Returns this

Protected restoreCurrentFileIntoIdleDirectory

  • restoreCurrentFileIntoIdleDirectory(): Promise<void>

Protected runJob

  • runJob(job: IJob): Promise<void>

Protected runNextJob

  • runNextJob(): Promise<void>

setMaxListeners

  • setMaxListeners(n: number): this
  • Parameters

    • n: number

    Returns this

start

  • start(): Promise<void>

Static listenerCount

  • listenerCount(emitter: EventEmitter, event: string | symbol): number
  • deprecated

    since v4.0.0

    Parameters

    • emitter: EventEmitter
    • event: string | symbol

    Returns number

Object literals

Protected options

options: object

autostart

autostart: false = false

delayBetweenJobs

delayBetweenJobs: number = 0

deleteJobOnFail

deleteJobOnFail: true = true

deleteJobOnSuccess

deleteJobOnSuccess: true = true

directory

directory: string = "./.queue"

jsonSpacing

jsonSpacing: number = 2

restore

restore: true = true

retries

retries: number = 3

Generated using TypeDoc