workflow / Exports / WorkflowEventSubscriber
Class: WorkflowEventSubscriber
WorkflowEventSubscriber - Core workflow event processing system
Table of contents
Constructors
Methods
- processEvent
- subscribeToEvents
- unsubscribeFromEvents
- subscribeToWorkflowUpdates
- unsubscribeFromWorkflowUpdates
- registerEventHandler
- unregisterEventHandler
- getRegisteredHandlers
- getWorkflowSnapshot
- getAllNodes
- getAllEdges
- findNodes
- getStats
- clear
- exportWorkflow
- importWorkflow
Constructors
constructor
• new WorkflowEventSubscriber(config?): WorkflowEventSubscriber
Parameters
| Name | Type |
|---|---|
config | WorkflowEventSubscriberConfig |
Returns
Defined in
services/workflow-event-subscriber.ts:76
Methods
processEvent
▸ processEvent(eventType, eventData): Promise<void>
Process an event through the registered handlers
Parameters
| Name | Type |
|---|---|
eventType | string |
eventData | unknown |
Returns
Promise<void>
Defined in
services/workflow-event-subscriber.ts:119
subscribeToEvents
▸ subscribeToEvents(callback): () => void
Subscribe to raw events
Parameters
| Name | Type |
|---|---|
callback | EventSubscriptionCallback |
Returns
fn
▸ (): void
Returns
void
Defined in
services/workflow-event-subscriber.ts:161
unsubscribeFromEvents
▸ unsubscribeFromEvents(callback): void
Unsubscribe from raw events
Parameters
| Name | Type |
|---|---|
callback | EventSubscriptionCallback |
Returns
void
Defined in
services/workflow-event-subscriber.ts:173
subscribeToWorkflowUpdates
▸ subscribeToWorkflowUpdates(callback): () => void
Subscribe to workflow updates
Parameters
| Name | Type |
|---|---|
callback | WorkflowUpdateCallback |
Returns
fn
▸ (): void
Returns
void
Defined in
services/workflow-event-subscriber.ts:183
unsubscribeFromWorkflowUpdates
▸ unsubscribeFromWorkflowUpdates(callback): void
Unsubscribe from workflow updates
Parameters
| Name | Type |
|---|---|
callback | WorkflowUpdateCallback |
Returns
void
Defined in
services/workflow-event-subscriber.ts:195
registerEventHandler
▸ registerEventHandler(handler): void
Register an event handler
Parameters
| Name | Type |
|---|---|
handler | EventHandler |
Returns
void
Defined in
services/workflow-event-subscriber.ts:209
unregisterEventHandler
▸ unregisterEventHandler(handlerName): boolean
Unregister an event handler
Parameters
| Name | Type |
|---|---|
handlerName | string |
Returns
boolean
Defined in
services/workflow-event-subscriber.ts:222
getRegisteredHandlers
▸ getRegisteredHandlers(): EventHandler[]
Get all registered handlers
Returns
Defined in
services/workflow-event-subscriber.ts:233
getWorkflowSnapshot
▸ getWorkflowSnapshot(): WorkflowSnapshot
Get current workflow snapshot
Returns
Defined in
services/workflow-event-subscriber.ts:244
getAllNodes
▸ getAllNodes(): WorkflowNode[]
Get all workflow nodes
Returns
Defined in
services/workflow-event-subscriber.ts:251
getAllEdges
▸ getAllEdges(): WorkflowEdge[]
Get all workflow edges
Returns
Defined in
services/workflow-event-subscriber.ts:258
findNodes
▸ findNodes(criteria): any
Find nodes by criteria
Parameters
| Name | Type |
|---|---|
criteria | Object |
criteria.type? | string | string[] |
criteria.status? | string | string[] |
criteria.level? | number | number[] |
Returns
any
Defined in
services/workflow-event-subscriber.ts:265
getStats
▸ getStats(): Object
Get workflow statistics
Returns
Object
| Name | Type |
|---|---|
eventsProcessed | number |
nodesCreated | number |
edgesCreated | number |
errorsEncountered | number |
lastEventTime | Date |
workflow | { nodeCount: number ; edgeCount: number ; totalUpdates: number ; lastUpdateTime?: Date } |
workflow.nodeCount | number |
workflow.edgeCount | number |
workflow.totalUpdates | number |
workflow.lastUpdateTime? | Date |
handlers | number |
Defined in
services/workflow-event-subscriber.ts:278
clear
▸ clear(): void
Clear all workflow data
Returns
void
Defined in
services/workflow-event-subscriber.ts:293
exportWorkflow
▸ exportWorkflow(): Object
Export workflow data in flat format for compatibility
Returns
Object
| Name | Type |
|---|---|
metadata | any |
__workflowType | string |
id | any |
name | any |
nodes | any |
edges | any |
layout | { algorithm: string = 'hierarchical'; direction: string = 'TB'; spacing: { nodeSpacing: number = 200; levelSpacing: number = 150 } ; alignment: { horizontal: string = 'center'; vertical: string = 'top' } } |
layout.algorithm | string |
layout.direction | string |
layout.spacing | { nodeSpacing: number = 200; levelSpacing: number = 150 } |
layout.spacing.nodeSpacing | number |
layout.spacing.levelSpacing | number |
layout.alignment | { horizontal: string = 'center'; vertical: string = 'top' } |
layout.alignment.horizontal | string |
layout.alignment.vertical | string |
Defined in
services/workflow-event-subscriber.ts:318
importWorkflow
▸ importWorkflow(data): boolean
Import workflow data
Parameters
| Name | Type |
|---|---|
data | any |
Returns
boolean