Skip to content

Graphorin API reference v0.15.1


Graphorin API reference / @graphorin/server / / ReplayBuffer

Interface: ReplayBuffer ​

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

Stable

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

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. 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