Skip to main content
Version: v1

SummaryCollection Class

Data structure that looks at the op stream to track summaries as they are broadcast, acked and nacked. It provides functionality for watching specific summaries.

Signature

export declare class SummaryCollection extends TypedEventEmitter<ISummaryCollectionOpEvents>

Extends: TypedEventEmitter<ISummaryCollectionOpEvents

Constructors

Constructor Description
(constructor)(deltaManager, logger) Constructs a new instance of the SummaryCollection class

Properties

Property Type Description
latestAck IAckedSummary | undefined
opsSinceLastAck number

Methods

Method Return Type Description
addOpListener(listener) void
createWatcher(clientId) IClientSummaryWatcher Creates and returns a summary watcher for a specific client. This will allow for local sent summaries to be better tracked.
emit(event, args) boolean
removeOpListener(listener) void
removeWatcher(clientId) void
setPendingAckTimerTimeoutCallback(maxAckWaitTime, timeoutCallback) void
unsetPendingAckTimerTimeoutCallback() void
waitFlushed() Promise<IAckedSummary | undefined> Returns a promise that resolves once all pending summary ops have been acked or nacked.
waitSummaryAck(referenceSequenceNumber) Promise<IAckedSummary> Returns a promise that resolves once a summary is acked that has a reference sequence number greater than or equal to the passed in sequence number.

Constructor Details

(constructor)

Constructs a new instance of the SummaryCollection class

Signature

constructor(deltaManager: IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>, logger: ITelemetryLogger);

Parameters

Parameter Type Description
deltaManager IDeltaManager<ISequencedDocumentMessage, IDocumentMessage>
logger ITelemetryLogger

Property Details

latestAck

Signature

get latestAck(): IAckedSummary | undefined;

Type: IAckedSummary | undefined

opsSinceLastAck

Signature

get opsSinceLastAck(): number;

Type: number

Method Details

addOpListener

Signature

addOpListener(listener: () => void): void;

Parameters

Parameter Type Description
listener () => void

createWatcher

Creates and returns a summary watcher for a specific client. This will allow for local sent summaries to be better tracked.

Signature

createWatcher(clientId: string): IClientSummaryWatcher;

Parameters

Parameter Type Description
clientId string client id for watcher

Returns

Return type: IClientSummaryWatcher

emit

Signature

emit(event: OpActionEventName, ...args: Parameters<OpActionEventListener>): boolean;

Parameters

Parameter Type Description
event OpActionEventName
args Parameters<OpActionEventListener>

Returns

Return type: boolean

removeOpListener

Signature

removeOpListener(listener: () => void): void;

Parameters

Parameter Type Description
listener () => void

removeWatcher

Signature

removeWatcher(clientId: string): void;

Parameters

Parameter Type Description
clientId string

setPendingAckTimerTimeoutCallback

Signature

setPendingAckTimerTimeoutCallback(maxAckWaitTime: number, timeoutCallback: () => void): void;

Parameters

Parameter Type Description
maxAckWaitTime number
timeoutCallback () => void

unsetPendingAckTimerTimeoutCallback

Signature

unsetPendingAckTimerTimeoutCallback(): void;

waitFlushed

Returns a promise that resolves once all pending summary ops have been acked or nacked.

Signature

waitFlushed(): Promise<IAckedSummary | undefined>;

Returns

Return type: Promise<IAckedSummary | undefined>

waitSummaryAck

Returns a promise that resolves once a summary is acked that has a reference sequence number greater than or equal to the passed in sequence number.

Signature

waitSummaryAck(referenceSequenceNumber: number): Promise<IAckedSummary>;

Parameters

Parameter Type Description
referenceSequenceNumber number reference sequence number to wait for

Returns

The latest acked summary

Return type: Promise<IAckedSummary>