An internal interface which defines a in memory batch

interface IInMemoryBatch {
    addEvent: ((evt: IPostTransmissionTelemetryItem | ITelemetryItem) => boolean);
    count: (() => number);
    createNew(endpoint: string, evts?: IPostTransmissionTelemetryItem[] | ITelemetryItem[], evtsLimitInMem?: number): IInMemoryBatch;
    getItems: (() => IPostTransmissionTelemetryItem[] | ITelemetryItem[]);
    split: ((fromEvt: number, numEvts?: number) => IInMemoryBatch);
}

Implemented by

Properties

addEvent: ((evt: IPostTransmissionTelemetryItem | ITelemetryItem) => boolean)

Enqueue the payload

count: (() => number)

Returns the number of elements in the buffer

getItems: (() => IPostTransmissionTelemetryItem[] | ITelemetryItem[])

Returns items stored in the buffer

split: ((fromEvt: number, numEvts?: number) => IInMemoryBatch)

Split this batch into 2 with any events > fromEvent returned in the new batch and all other events are kept in the current batch.

Type declaration

    • (fromEvt, numEvts?): IInMemoryBatch
    • Parameters

      • fromEvt: number

        The first event to remove from the current batch.

      • OptionalnumEvts: number

        The number of events to be removed from the current batch and returned in the new one. Defaults to all trailing events

      Returns IInMemoryBatch

Methods