arvo-event-handler 2.3.3 → 3.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AbstractArvoEventHandler/index.d.ts +1 -1
- package/dist/ArvoEventHandler/helpers.d.ts +40 -6
- package/dist/ArvoEventHandler/helpers.js +40 -6
- package/dist/ArvoEventHandler/index.d.ts +78 -49
- package/dist/ArvoEventHandler/index.js +152 -83
- package/dist/ArvoEventHandler/types.d.ts +25 -2
- package/dist/ArvoMachine/createMachine.d.ts +208 -0
- package/dist/ArvoMachine/createMachine.js +283 -0
- package/dist/ArvoMachine/index.d.ts +93 -0
- package/dist/ArvoMachine/index.js +160 -0
- package/dist/ArvoMachine/types.d.ts +194 -0
- package/dist/ArvoMachine/utils.d.ts +40 -0
- package/dist/ArvoMachine/utils.js +70 -0
- package/dist/ArvoOrchestrator/error.d.ts +16 -0
- package/dist/ArvoOrchestrator/error.js +43 -0
- package/dist/ArvoOrchestrator/factory.d.ts +28 -0
- package/dist/ArvoOrchestrator/factory.js +56 -0
- package/dist/ArvoOrchestrator/index.d.ts +69 -0
- package/dist/ArvoOrchestrator/index.js +597 -0
- package/dist/ArvoOrchestrator/types.d.ts +98 -0
- package/dist/ArvoResumable/factory.d.ts +50 -0
- package/dist/ArvoResumable/factory.js +70 -0
- package/dist/ArvoResumable/index.d.ts +141 -0
- package/dist/ArvoResumable/index.js +694 -0
- package/dist/ArvoResumable/types.d.ts +147 -0
- package/dist/ArvoResumable/types.js +2 -0
- package/dist/MachineExecutionEngine/index.d.ts +29 -0
- package/dist/MachineExecutionEngine/index.js +132 -0
- package/dist/MachineExecutionEngine/interface.d.ts +14 -0
- package/dist/MachineExecutionEngine/interface.js +2 -0
- package/dist/MachineExecutionEngine/types.d.ts +14 -0
- package/dist/MachineExecutionEngine/types.js +2 -0
- package/dist/MachineMemory/Simple.d.ts +51 -0
- package/dist/MachineMemory/Simple.js +158 -0
- package/dist/MachineMemory/TelemetredSimple.d.ts +51 -0
- package/dist/MachineMemory/TelemetredSimple.js +230 -0
- package/dist/MachineMemory/interface.d.ts +57 -0
- package/dist/MachineMemory/interface.js +2 -0
- package/dist/MachineMemory/utils.d.ts +1 -0
- package/dist/MachineMemory/utils.js +18 -0
- package/dist/MachineRegistry/index.d.ts +37 -0
- package/dist/MachineRegistry/index.js +87 -0
- package/dist/MachineRegistry/interface.d.ts +21 -0
- package/dist/MachineRegistry/interface.js +2 -0
- package/dist/SyncEventResource/index.d.ts +110 -0
- package/dist/SyncEventResource/index.js +280 -0
- package/dist/SyncEventResource/types.d.ts +2 -0
- package/dist/SyncEventResource/types.js +2 -0
- package/dist/index.d.ts +26 -8
- package/dist/index.js +39 -16
- package/dist/utils/SimpleEventBroker/helper.d.ts +166 -0
- package/dist/utils/SimpleEventBroker/helper.js +276 -0
- package/dist/utils/SimpleEventBroker/index.d.ts +96 -0
- package/dist/utils/SimpleEventBroker/index.js +259 -0
- package/dist/utils/SimpleEventBroker/types.d.ts +6 -0
- package/dist/utils/SimpleEventBroker/types.js +2 -0
- package/dist/utils/SimpleEventBroker/utils.d.ts +1 -0
- package/dist/utils/SimpleEventBroker/utils.js +10 -0
- package/dist/{utils.d.ts → utils/index.d.ts} +3 -36
- package/dist/utils/index.js +91 -0
- package/dist/utils/object/index.d.ts +37 -0
- package/dist/utils/object/index.js +63 -0
- package/package.json +5 -3
- package/dist/ArvoEventRouter/helpers.d.ts +0 -19
- package/dist/ArvoEventRouter/helpers.js +0 -22
- package/dist/ArvoEventRouter/index.d.ts +0 -89
- package/dist/ArvoEventRouter/index.js +0 -268
- package/dist/ArvoEventRouter/types.d.ts +0 -36
- package/dist/ArvoEventRouter/utils.d.ts +0 -30
- package/dist/ArvoEventRouter/utils.js +0 -43
- package/dist/MultiArvoEventHandler/helpers.d.ts +0 -48
- package/dist/MultiArvoEventHandler/helpers.js +0 -56
- package/dist/MultiArvoEventHandler/index.d.ts +0 -68
- package/dist/MultiArvoEventHandler/index.js +0 -205
- package/dist/MultiArvoEventHandler/types.d.ts +0 -64
- package/dist/utils.js +0 -191
- /package/dist/{ArvoEventRouter → ArvoMachine}/types.js +0 -0
- /package/dist/{MultiArvoEventHandler → ArvoOrchestrator}/types.js +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { type ArvoContractRecord, type ArvoEvent, type OpenTelemetryHeaders } from 'arvo-core';
|
|
2
|
+
import type ArvoMachine from '../ArvoMachine';
|
|
3
|
+
import type { EnqueueArvoEventActionParam } from '../ArvoMachine/types';
|
|
4
|
+
import type { IMachineExectionEngine } from '../MachineExecutionEngine/interface';
|
|
5
|
+
import type { IMachineMemory } from '../MachineMemory/interface';
|
|
6
|
+
import type { IMachineRegistry } from '../MachineRegistry/interface';
|
|
7
|
+
import type { IArvoOrchestrator, MachineMemoryRecord } from './types';
|
|
8
|
+
import { SyncEventResource } from '../SyncEventResource';
|
|
9
|
+
import AbstractArvoEventHandler from '../AbstractArvoEventHandler';
|
|
10
|
+
import type { ArvoEventHandlerOpenTelemetryOptions } from '../types';
|
|
11
|
+
/**
|
|
12
|
+
* Orchestrates state machine execution and lifecycle management.
|
|
13
|
+
* Handles machine resolution, state management, event processing and error handling.
|
|
14
|
+
*/
|
|
15
|
+
export declare class ArvoOrchestrator extends AbstractArvoEventHandler {
|
|
16
|
+
readonly executionunits: number;
|
|
17
|
+
readonly registry: IMachineRegistry;
|
|
18
|
+
readonly executionEngine: IMachineExectionEngine;
|
|
19
|
+
readonly syncEventResource: SyncEventResource<MachineMemoryRecord>;
|
|
20
|
+
get source(): any;
|
|
21
|
+
get requiresResourceLocking(): boolean;
|
|
22
|
+
get memory(): IMachineMemory<MachineMemoryRecord>;
|
|
23
|
+
get domain(): string | null;
|
|
24
|
+
/**
|
|
25
|
+
* Creates a new orchestrator instance
|
|
26
|
+
* @param params - Configuration parameters
|
|
27
|
+
* @throws Error if machines in registry have different sources
|
|
28
|
+
*/
|
|
29
|
+
constructor({ executionunits, memory, registry, executionEngine, requiresResourceLocking }: IArvoOrchestrator);
|
|
30
|
+
/**
|
|
31
|
+
* Creates emittable event from execution result
|
|
32
|
+
* @param event - Source event to emit
|
|
33
|
+
* @param machine - Machine that generated event
|
|
34
|
+
* @param otelHeaders - OpenTelemetry headers
|
|
35
|
+
* @param orchestrationParentSubject - Parent orchestration subject
|
|
36
|
+
* @param sourceEvent - Original triggering event
|
|
37
|
+
* @param initEventId - The id of the event which initiated the orchestration in the first place
|
|
38
|
+
* @param _domain - The domain of the event.
|
|
39
|
+
*
|
|
40
|
+
* @throws {ContractViolation} On schema/contract mismatch
|
|
41
|
+
* @throws {ExecutionViolation} On invalid parentSubject$$ format
|
|
42
|
+
*/
|
|
43
|
+
protected createEmittableEvent(event: EnqueueArvoEventActionParam, machine: ArvoMachine<any, any, any, any, any>, otelHeaders: OpenTelemetryHeaders, orchestrationParentSubject: string | null, sourceEvent: ArvoEvent, initEventId: string, _domain: string | null | undefined): ArvoEvent;
|
|
44
|
+
/**
|
|
45
|
+
* Core orchestration method that executes state machines in response to events.
|
|
46
|
+
* Manages the complete event lifecycle:
|
|
47
|
+
* 1. Acquires lock and state
|
|
48
|
+
* 2. Validates events and contracts
|
|
49
|
+
* 3. Executes state machine
|
|
50
|
+
* 4. Persists new state
|
|
51
|
+
* 5. Generates response events with domain-based segregation
|
|
52
|
+
*
|
|
53
|
+
* @param event - Event triggering the execution
|
|
54
|
+
* @param opentelemetry - OpenTelemetry configuration
|
|
55
|
+
* @returns Object containing domained events
|
|
56
|
+
*
|
|
57
|
+
* @throws {TransactionViolation} Lock/state operations failed
|
|
58
|
+
* @throws {ExecutionViolation} Invalid event structure/flow
|
|
59
|
+
* @throws {ContractViolation} Schema/contract mismatch
|
|
60
|
+
* @throws {ConfigViolation} Missing/invalid machine version
|
|
61
|
+
*/
|
|
62
|
+
execute(event: ArvoEvent, opentelemetry?: ArvoEventHandlerOpenTelemetryOptions): Promise<{
|
|
63
|
+
events: ArvoEvent[];
|
|
64
|
+
}>;
|
|
65
|
+
/**
|
|
66
|
+
* Gets the error schema for this orchestrator
|
|
67
|
+
*/
|
|
68
|
+
get systemErrorSchema(): ArvoContractRecord;
|
|
69
|
+
}
|