Skip to main content
Version: v1

ParallelRequests Class

Helper class to organize parallel fetching of data It can be used to concurrently do many requests, while consuming data in the right order. Take a look at UT for examples.

Signature

export declare class ParallelRequests<T>

Type Parameters

ParameterDescription
T

Constructors

ConstructorDescription
(constructor)(from, to, payloadSize, logger, requestCallback, responseCallback)Constructs a new instance of the ParallelRequests class

Properties

PropertyTypeDescription
canceledboolean

Methods

MethodReturn TypeDescription
cancel()void
run(concurrency)Promise<void>

Constructor Details

(constructor)

Constructs a new instance of the ParallelRequests class

Signature

constructor(from: number, to: number | undefined, payloadSize: number, logger: ITelemetryLogger, requestCallback: (request: number, from: number, to: number, strongTo: boolean, props: ITelemetryProperties) => Promise<{
partial: boolean;
cancel: boolean;
payload: T[];
}>, responseCallback: (payload: T[]) => void);

Parameters

ParameterTypeDescription
fromnumber
tonumber | undefined
payloadSizenumber
loggerITelemetryLogger
requestCallback(request: number, from: number, to: number, strongTo: boolean, props: ITelemetryProperties) => Promise<{ partial: boolean; cancel: boolean; payload: T[]; }>
responseCallback(payload: T[]) => void

Property Details

canceled

Signature

get canceled(): boolean;

Type: boolean

Method Details

cancel

Signature

cancel(): void;

run

Signature

run(concurrency: number): Promise<void>;

Parameters

ParameterTypeDescription
concurrencynumber

Returns

Return type: Promise<void>