Interfaces · @purista/core

EventBridge

Event transport adapter contract used by PURISTA services.

Signature

EventBridge.ts typescript
interface EventBridge

Properties

4 entries

capabilities

Property

Source
capabilities.ts typescript
capabilities: EventBridgeCapabilities

Runtime capability matrix used for strict startup validation.

defaultCommandTimeout

Property

Source
defaultCommandTimeout.ts typescript
defaultCommandTimeout: number

The default time until when a command invocation automatically returns a time out error

instanceId

Property

Source
instanceId.ts typescript
instanceId: string

Stable runtime instance id used to distinguish bridge processes.

name

Property

Source
name.ts typescript
name: string

Human-readable bridge name used in logs, traces, and metrics.

Methods

17 entries

destroy

Method

Source
destroy.ts typescript
destroy(): Promise<void>

Shut down event bridge as gracefully as possible

emitMessage

Method

Source
emitMessage.ts typescript
emitMessage(message: Omit<EBMessage, "id" | "timestamp" | "correlationId">): Promise<Readonly<EBMessage>>

Emit a message to the event bridge without awaiting a result.

getInFlightExecutionCount

Method

Source
getInFlightExecutionCount.ts typescript
getInFlightExecutionCount(): number

Number of currently running handlers across all work kinds.

getInFlightExecutionCounts

Method

Source
getInFlightExecutionCounts.ts typescript
getInFlightExecutionCounts(): InFlightExecutionCounts

Number of currently running handlers grouped by work kind.

getPausedSubscriptionConsumers

Method

Source
getPausedSubscriptionConsumers.ts typescript
getPausedSubscriptionConsumers(): PausedSubscriptionConsumersByRegistrationKey

Returns paused subscription consumer states keyed by adapter registration key.

invoke

Method

Source
invoke.ts typescript
invoke<T>(input: Omit<Command, "id" | "messageType" | "timestamp" | "correlationId">, ttl?: number): Promise<T>

Call a command of a service and return the result of this command

isHealthy

Method

Source
isHealthy.ts typescript
isHealthy(): Promise<boolean>

Indicates if the eventbridge is running and works correctly

isReady

Method

Source
isReady.ts typescript
isReady(): Promise<boolean>

Indicates if the eventbridge has been started and is connected to underlaying message broker

openStream

Method

Source
openStream.ts typescript
openStream<Chunk, Final>(input: Omit<StreamOpenRequest, "id" | "messageType" | "timestamp" | "correlationId">, ttl?: number): Promise<StreamHandle<Chunk, Final>>

Open a stream invocation.

registerCommand

Method

Source
registerCommand.ts typescript
registerCommand(address: EBMessageAddress, cb: (message: { contentEncoding: string; contentType: string; correlationId: string; eventName: string; id: string; messageType: Command; ... }) => Promise<Readonly<Omit<unknown, unknown>> | Readonly<Omit<unknown, unknown>>>, metadata: CommandDefinitionMetadataBase, eventBridgeConfig: DefinitionEventBridgeConfig): Promise<string>

Register a command handler for a service target.

registerStream

Method

Source
registerStream.ts typescript
registerStream(address: EBMessageAddress, cb: (message: StreamMessage) => Promise<void>, metadata: StreamDefinitionMetadataBase, eventBridgeConfig: DefinitionEventBridgeConfig): Promise<string>

Register a service stream handler for a service target.

registerSubscription

Method

Source
registerSubscription.ts typescript
registerSubscription(subscription: Subscription, cb: (message: EBMessage) => Promise<Omit<{ contentEncoding: unknown; contentType: unknown; correlationId: unknown; eventName: unknown; id: unknown; messageType: unknown; ... }, unknown | unknown> | undefined>): Promise<string>

Register a new subscription.

resumeSubscriptionConsumer

Method

Source
resumeSubscriptionConsumer.ts typescript
resumeSubscriptionConsumer(registrationKey: string): Promise<void>

Resumes a paused subscription consumer by registration key.

start

Method

Source
start.ts typescript
start(): Promise<void>

Start the eventbridge and connect to the underlaying message broker

unregisterCommand

Method

Source
unregisterCommand.ts typescript
unregisterCommand(address: EBMessageAddress): Promise<void>

Unregister a service command

unregisterStream

Method

Source
unregisterStream.ts typescript
unregisterStream(address: EBMessageAddress): Promise<void>

Unregister a service stream

unregisterSubscription

Method

Source
unregisterSubscription.ts typescript
unregisterSubscription(address: EBMessageAddress): Promise<void>

Unregister a subscription.