Skip to content

Graphorin API reference v0.1.0


Graphorin API reference / @graphorin/server / / WsDispatcher

Interface: WsDispatcher

Defined in: packages/server/src/ws/dispatcher.ts:137

Public surface of the dispatcher.

Stable

Properties

PropertyModifierTypeDefined in
replayBufferreadonlyReplayBufferpackages/server/src/ws/dispatcher.ts:139
sanitizerreadonlyDeliveryCommentarySanitizerpackages/server/src/ws/dispatcher.ts:138

Methods

emit()

ts
emit(subject, frame): void;

Defined in: packages/server/src/ws/dispatcher.ts:163

Push an event into the dispatcher. Goes through the sanitizer, validates against the protocol schema, persists into the replay buffer, and fans out to every matching active subscription.

Parameters

ParameterType
subjectstring
frameBareEventFrame

Returns

void


emitLifecycle()

ts
emitLifecycle(
   subscriptionId, 
   status, 
   reason?): void;

Defined in: packages/server/src/ws/dispatcher.ts:165

Push a lifecycle frame to a single subscription.

Parameters

ParameterType
subscriptionIdstring
status"aborted" | "running" | "completed" | "failed" | "paused"
reason?string

Returns

void


listForSubscriber()

ts
listForSubscriber(subscriberId): readonly WsSubscriptionSnapshot[];

Defined in: packages/server/src/ws/dispatcher.ts:171

List active subscriptions for a given subscriber (diagnostics).

Parameters

ParameterType
subscriberIdstring

Returns

readonly WsSubscriptionSnapshot[]


registerSubscriber()

ts
registerSubscriber(handle): {
  unregister: void;
};

Defined in: packages/server/src/ws/dispatcher.ts:144

Register a subscriber (one per WebSocket connection). unregister is called on close.

Parameters

ParameterType
handleWsSubscriberHandle

Returns

ts
{
  unregister: void;
}
NameTypeDefined in
unregister()() => voidpackages/server/src/ws/dispatcher.ts:144

shutdown()

ts
shutdown(): void;

Defined in: packages/server/src/ws/dispatcher.ts:175

Clear in-memory state (used during graceful shutdown).

Returns

void


size()

ts
size(): {
  subscribers: number;
  subscriptions: number;
};

Defined in: packages/server/src/ws/dispatcher.ts:173

Returns

ts
{
  subscribers: number;
  subscriptions: number;
}
NameTypeDefined in
subscribersnumberpackages/server/src/ws/dispatcher.ts:173
subscriptionsnumberpackages/server/src/ws/dispatcher.ts:173

snapshotSubscription()

ts
snapshotSubscription(subscriptionId): 
  | WsSubscriptionSnapshot
  | undefined;

Defined in: packages/server/src/ws/dispatcher.ts:172

Parameters

ParameterType
subscriptionIdstring

Returns

| WsSubscriptionSnapshot | undefined


subscribe()

ts
subscribe(input): SubscribeResult;

Defined in: packages/server/src/ws/dispatcher.ts:151

Open a new subscription for an active subscriber. Returns either the subscription snapshot + replayed-event count or a typed failure reason the caller maps to the appropriate close code / RPC error.

Parameters

ParameterType
input{ sinceEventId?: string; subject: string; subscriberId: string; subscriptionId: string; }
input.sinceEventId?string
input.subjectstring
input.subscriberIdstring
input.subscriptionIdstring

Returns

SubscribeResult


unsubscribe()

ts
unsubscribe(subscriptionId): boolean;

Defined in: packages/server/src/ws/dispatcher.ts:157

Parameters

ParameterType
subscriptionIdstring

Returns

boolean