Skip to main content

WaterfallPipeline <Ctx, Input>

Hierarchy

Index

Events

readonlyonAfterRun

onAfterRun: Event<unknown[], string> = ...

Called after the pipeline executes work units.

readonlyonBeforeRun

onBeforeRun: Event<[Input], string> = ...

Called before the pipeline executes work units.

readonlyonRunWorkUnit

onRunWorkUnit: Event<[WorkUnit<{}, Input, Input>, Input], string> = ...

Called before a single work unit is executed.

Other

constructor

  • new WaterfallPipeline<Ctx, Input>(context: Ctx, value?: Input, options?: {}): WaterfallPipeline<Ctx, Input>
  • Type parameters

readonlycontext

context: Ctx

readonlydebug

debug: Debugger

depth

depth: number = 0

index

index: number = 0

readonlyoptions

options: Readonly<Required<{}>>

Validated and configured options.

root

root: SerialPipeline<{}, Ctx, any, any> = ...

readonlyvalue

value: Input

id

  • get id(): string
  • Return a unique hierarchical ID.

blueprint

  • blueprint(schemas: __module): object

configure

  • configure(options?: Partial<{}> | (options: Required<{}>) => Partial<{}>): Readonly<Required<{}>>
  • Set an options object by merging the new partial and existing options with the defined blueprint, while running all validation checks. Freeze and return the options object.

    object.configure({ name: 'Boost' });

    object.configure((prevOptions) => ({
    nestedObject: {
    ...prevOptions.nestedObject,
    some: 'value',
    },
    }));

getWorkUnits

  • getWorkUnits(): WorkUnit<{}, Input, Input>[]
  • Traverse the linked list to return a list of work units in defined order.

monitor

  • Monitor all hierarchical pipelines, routines, and tasks being executed, by listening to all applicable events.

pipe

  • Pipe a work unit to be ran with the return value of the previous work unit.


    Type parameters

    • O

run

  • run(): Promise<Input>
  • Execute the pipeline in sequential order with the output of each work unit being passed to the next work unit in the chain.