arvo-core 1.1.21 → 1.1.22
Sign up to get free protection for your applications and to get access to all the features.
@@ -4,33 +4,72 @@ import { ArvoOrchestratorVersion, ArvoOrchestrationSubjectContent } from './type
|
|
4
4
|
*/
|
5
5
|
export default class ArvoOrchestrationSubject {
|
6
6
|
/**
|
7
|
-
*
|
7
|
+
* Represents a wildcard version number used when version matching is not required.
|
8
|
+
* Format follows semantic versioning pattern.
|
9
|
+
*/
|
10
|
+
static readonly WildCardMachineVersion: ArvoOrchestratorVersion;
|
11
|
+
/**
|
12
|
+
* Creates a new Arvo orchestration subject with basic required parameters.
|
13
|
+
* This is a convenience method that wraps the more detailed {@link create} method.
|
14
|
+
*
|
15
|
+
* @param param - Configuration object for the orchestration subject
|
16
|
+
* @param param.orchestator - Name identifier of the orchestrator
|
17
|
+
* @param param.version - Version of the orchestrator. If null, defaults to {@link WildCardMachineVersion}
|
18
|
+
* @param param.initiator - Identifier of the entity initiating the orchestration
|
19
|
+
* @returns A base64 encoded string containing the compressed orchestration subject data
|
20
|
+
* @throws Error if the provided parameters result in invalid subject content
|
8
21
|
*
|
9
|
-
* @
|
10
|
-
*
|
11
|
-
*
|
12
|
-
*
|
13
|
-
*
|
22
|
+
* @example
|
23
|
+
* ```typescript
|
24
|
+
* const subject = ArvoOrchestrationSubject.new({
|
25
|
+
* orchestator: "mainProcess",
|
26
|
+
* version: "1.0.0",
|
27
|
+
* initiator: "systemA"
|
28
|
+
* });
|
29
|
+
* ```
|
14
30
|
*/
|
15
31
|
static new(param: {
|
16
32
|
orchestator: string;
|
17
|
-
version: ArvoOrchestratorVersion;
|
33
|
+
version: ArvoOrchestratorVersion | null;
|
18
34
|
initiator: string;
|
19
35
|
}): string;
|
20
36
|
/**
|
21
|
-
* Creates an Arvo orchestration subject from
|
37
|
+
* Creates an Arvo orchestration subject from detailed content parameters.
|
38
|
+
* The content is validated, compressed using zlib, and encoded in base64 format.
|
22
39
|
*
|
23
|
-
* @param param -
|
24
|
-
* @returns A base64 encoded string
|
25
|
-
* @throws Error if
|
40
|
+
* @param param - Detailed orchestration subject content following the {@link ArvoOrchestrationSubjectContent} structure
|
41
|
+
* @returns A base64 encoded string containing the compressed orchestration subject data
|
42
|
+
* @throws Error if validation fails or compression encounters an error
|
43
|
+
*
|
44
|
+
* @example
|
45
|
+
* ```typescript
|
46
|
+
* const subject = ArvoOrchestrationSubject.create({
|
47
|
+
* orchestrator: {
|
48
|
+
* name: "mainProcess",
|
49
|
+
* version: "1.0.0"
|
50
|
+
* },
|
51
|
+
* execution: {
|
52
|
+
* id: "550e8400-e29b-41d4-a716-446655440000",
|
53
|
+
* initiator: "systemA"
|
54
|
+
* }
|
55
|
+
* });
|
56
|
+
* ```
|
26
57
|
*/
|
27
58
|
static create(param: ArvoOrchestrationSubjectContent): string;
|
28
59
|
/**
|
29
|
-
* Parses a base64 encoded
|
60
|
+
* Parses a base64 encoded orchestration subject string back into its structured content form.
|
61
|
+
* Performs decompression, JSON parsing, and validation of the subject content.
|
62
|
+
*
|
63
|
+
* @param subject - Base64 encoded string representing the compressed orchestration subject
|
64
|
+
* @returns The decoded and validated {@link ArvoOrchestrationSubjectContent}
|
65
|
+
* @throws Error if decompression, parsing, or validation fails
|
30
66
|
*
|
31
|
-
* @
|
32
|
-
*
|
33
|
-
*
|
67
|
+
* @example
|
68
|
+
* ```typescript
|
69
|
+
* const content = ArvoOrchestrationSubject.parse(encodedSubject);
|
70
|
+
* console.log(content.orchestrator.name);
|
71
|
+
* console.log(content.execution.id);
|
72
|
+
* ```
|
34
73
|
*/
|
35
74
|
static parse(subject: string): ArvoOrchestrationSubjectContent;
|
36
75
|
}
|
@@ -34,19 +34,31 @@ var ArvoOrchestrationSubject = /** @class */ (function () {
|
|
34
34
|
function ArvoOrchestrationSubject() {
|
35
35
|
}
|
36
36
|
/**
|
37
|
-
* Creates a new Arvo orchestration subject.
|
37
|
+
* Creates a new Arvo orchestration subject with basic required parameters.
|
38
|
+
* This is a convenience method that wraps the more detailed {@link create} method.
|
38
39
|
*
|
39
|
-
* @param param -
|
40
|
-
* @param param.
|
41
|
-
* @param param.version - Version of the orchestrator
|
42
|
-
* @param param.initiator -
|
43
|
-
* @returns A base64 encoded string
|
40
|
+
* @param param - Configuration object for the orchestration subject
|
41
|
+
* @param param.orchestator - Name identifier of the orchestrator
|
42
|
+
* @param param.version - Version of the orchestrator. If null, defaults to {@link WildCardMachineVersion}
|
43
|
+
* @param param.initiator - Identifier of the entity initiating the orchestration
|
44
|
+
* @returns A base64 encoded string containing the compressed orchestration subject data
|
45
|
+
* @throws Error if the provided parameters result in invalid subject content
|
46
|
+
*
|
47
|
+
* @example
|
48
|
+
* ```typescript
|
49
|
+
* const subject = ArvoOrchestrationSubject.new({
|
50
|
+
* orchestator: "mainProcess",
|
51
|
+
* version: "1.0.0",
|
52
|
+
* initiator: "systemA"
|
53
|
+
* });
|
54
|
+
* ```
|
44
55
|
*/
|
45
56
|
ArvoOrchestrationSubject.new = function (param) {
|
57
|
+
var _a;
|
46
58
|
return ArvoOrchestrationSubject.create({
|
47
59
|
orchestrator: {
|
48
60
|
name: param.orchestator,
|
49
|
-
version: param.version,
|
61
|
+
version: (_a = param.version) !== null && _a !== void 0 ? _a : ArvoOrchestrationSubject.WildCardMachineVersion,
|
50
62
|
},
|
51
63
|
execution: {
|
52
64
|
id: (0, uuid_1.v4)(),
|
@@ -55,11 +67,26 @@ var ArvoOrchestrationSubject = /** @class */ (function () {
|
|
55
67
|
});
|
56
68
|
};
|
57
69
|
/**
|
58
|
-
* Creates an Arvo orchestration subject from
|
70
|
+
* Creates an Arvo orchestration subject from detailed content parameters.
|
71
|
+
* The content is validated, compressed using zlib, and encoded in base64 format.
|
72
|
+
*
|
73
|
+
* @param param - Detailed orchestration subject content following the {@link ArvoOrchestrationSubjectContent} structure
|
74
|
+
* @returns A base64 encoded string containing the compressed orchestration subject data
|
75
|
+
* @throws Error if validation fails or compression encounters an error
|
59
76
|
*
|
60
|
-
* @
|
61
|
-
*
|
62
|
-
*
|
77
|
+
* @example
|
78
|
+
* ```typescript
|
79
|
+
* const subject = ArvoOrchestrationSubject.create({
|
80
|
+
* orchestrator: {
|
81
|
+
* name: "mainProcess",
|
82
|
+
* version: "1.0.0"
|
83
|
+
* },
|
84
|
+
* execution: {
|
85
|
+
* id: "550e8400-e29b-41d4-a716-446655440000",
|
86
|
+
* initiator: "systemA"
|
87
|
+
* }
|
88
|
+
* });
|
89
|
+
* ```
|
63
90
|
*/
|
64
91
|
ArvoOrchestrationSubject.create = function (param) {
|
65
92
|
try {
|
@@ -76,11 +103,19 @@ var ArvoOrchestrationSubject = /** @class */ (function () {
|
|
76
103
|
}
|
77
104
|
};
|
78
105
|
/**
|
79
|
-
* Parses a base64 encoded
|
106
|
+
* Parses a base64 encoded orchestration subject string back into its structured content form.
|
107
|
+
* Performs decompression, JSON parsing, and validation of the subject content.
|
108
|
+
*
|
109
|
+
* @param subject - Base64 encoded string representing the compressed orchestration subject
|
110
|
+
* @returns The decoded and validated {@link ArvoOrchestrationSubjectContent}
|
111
|
+
* @throws Error if decompression, parsing, or validation fails
|
80
112
|
*
|
81
|
-
* @
|
82
|
-
*
|
83
|
-
*
|
113
|
+
* @example
|
114
|
+
* ```typescript
|
115
|
+
* const content = ArvoOrchestrationSubject.parse(encodedSubject);
|
116
|
+
* console.log(content.orchestrator.name);
|
117
|
+
* console.log(content.execution.id);
|
118
|
+
* ```
|
84
119
|
*/
|
85
120
|
ArvoOrchestrationSubject.parse = function (subject) {
|
86
121
|
try {
|
@@ -97,6 +132,11 @@ var ArvoOrchestrationSubject = /** @class */ (function () {
|
|
97
132
|
throw new Error((0, utils_1.cleanString)("\n Error parsing orchestration subject string to the context. \n Error -> ".concat(e.message, " \n subject -> ").concat(subject, "\n ")));
|
98
133
|
}
|
99
134
|
};
|
135
|
+
/**
|
136
|
+
* Represents a wildcard version number used when version matching is not required.
|
137
|
+
* Format follows semantic versioning pattern.
|
138
|
+
*/
|
139
|
+
ArvoOrchestrationSubject.WildCardMachineVersion = '0.0.0';
|
100
140
|
return ArvoOrchestrationSubject;
|
101
141
|
}());
|
102
142
|
exports.default = ArvoOrchestrationSubject;
|