Skip to content

Graphorin API reference v0.7.0


Graphorin API reference / @graphorin/server / / ReplayBuffer

Interface: ReplayBuffer

Defined in: packages/server/src/ws/replay-buffer.ts:57

Per-subject replay buffer. Stores up to maxEvents per subject with a TTL; thread-safe under the single-writer Node event loop model.

Stable

Methods

forget()

ts
forget(subject): void;

Defined in: packages/server/src/ws/replay-buffer.ts:61

Parameters

ParameterType
subjectstring

Returns

void


prune()

ts
prune(): void;

Defined in: packages/server/src/ws/replay-buffer.ts:62

Returns

void


push()

ts
push(subject, event): void;

Defined in: packages/server/src/ws/replay-buffer.ts:58

Parameters

ParameterType
subjectstring
event{ eventId: string; kind: "event"; payload?: unknown; subject: string; subscriptionId: string; type: string; v: "1"; }
event.eventIdstring
event.kind"event"
event.payload?unknown
event.subjectstring
event.subscriptionIdstring
event.typestring
event.v"1"

Returns

void


replay()

ts
replay(subject, sinceEventId): ReplayBufferSlice;

Defined in: packages/server/src/ws/replay-buffer.ts:59

Parameters

ParameterType
subjectstring
sinceEventIdstring | undefined

Returns

ReplayBufferSlice


size()

ts
size(subject): number;

Defined in: packages/server/src/ws/replay-buffer.ts:60

Parameters

ParameterType
subjectstring

Returns

number


stats()?

ts
optional stats(): ReplayBufferStats;

Defined in: packages/server/src/ws/replay-buffer.ts:69

Occupancy snapshot (W-028). OPTIONAL so external implementations of this @stable interface keep compiling; createReplayBuffer always provides it. When absent, the /v1/metrics replay-buffer gauge degrades to 0.

Returns

ReplayBufferStats