@io-orkes/conductor-javascript 1.1.0 → 1.2.0-rc.1
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/browser.d.mts +13 -0
- package/dist/browser.d.ts +13 -0
- package/dist/browser.js +3552 -0
- package/dist/browser.js.map +1 -0
- package/dist/browser.mjs +3456 -0
- package/dist/browser.mjs.map +1 -0
- package/dist/index.d.mts +53 -0
- package/dist/index.d.ts +35 -2162
- package/dist/index.js +2093 -728
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +2061 -713
- package/dist/index.mjs.map +1 -1
- package/dist/types-e3d6bb0f.d.ts +2179 -0
- package/package.json +18 -8
package/dist/index.js
CHANGED
|
@@ -1,26 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
|
-
var __defProps = Object.defineProperties;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
5
|
-
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
6
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
7
|
-
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
8
6
|
var __getProtoOf = Object.getPrototypeOf;
|
|
9
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
10
|
-
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
11
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
12
|
-
var __spreadValues = (a, b) => {
|
|
13
|
-
for (var prop in b || (b = {}))
|
|
14
|
-
if (__hasOwnProp.call(b, prop))
|
|
15
|
-
__defNormalProp(a, prop, b[prop]);
|
|
16
|
-
if (__getOwnPropSymbols)
|
|
17
|
-
for (var prop of __getOwnPropSymbols(b)) {
|
|
18
|
-
if (__propIsEnum.call(b, prop))
|
|
19
|
-
__defNormalProp(a, prop, b[prop]);
|
|
20
|
-
}
|
|
21
|
-
return a;
|
|
22
|
-
};
|
|
23
|
-
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
|
|
24
8
|
var __export = (target, all) => {
|
|
25
9
|
for (var name in all)
|
|
26
10
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -33,7 +17,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
33
17
|
}
|
|
34
18
|
return to;
|
|
35
19
|
};
|
|
36
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
21
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
22
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
23
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
24
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
25
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
26
|
+
mod
|
|
27
|
+
));
|
|
37
28
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
38
29
|
|
|
39
30
|
// index.ts
|
|
@@ -46,6 +37,7 @@ __export(conductor_javascript_exports, {
|
|
|
46
37
|
ConductorClient: () => ConductorClient,
|
|
47
38
|
ConductorError: () => ConductorError,
|
|
48
39
|
DefaultLogger: () => DefaultLogger,
|
|
40
|
+
DnsCacheResolver: () => DnsCacheResolver,
|
|
49
41
|
EventResourceService: () => EventResourceService,
|
|
50
42
|
HealthCheckResourceService: () => HealthCheckResourceService,
|
|
51
43
|
HumanExecutor: () => HumanExecutor,
|
|
@@ -59,10 +51,12 @@ __export(conductor_javascript_exports, {
|
|
|
59
51
|
WorkflowBulkResourceService: () => WorkflowBulkResourceService,
|
|
60
52
|
WorkflowExecutor: () => WorkflowExecutor,
|
|
61
53
|
WorkflowResourceService: () => WorkflowResourceService,
|
|
54
|
+
baseOrkesConductorClient: () => baseOrkesConductorClient,
|
|
62
55
|
conductorEventTask: () => conductorEventTask,
|
|
63
56
|
doWhileTask: () => doWhileTask,
|
|
64
57
|
dynamicForkTask: () => dynamicForkTask,
|
|
65
58
|
eventTask: () => eventTask,
|
|
59
|
+
fetchCatchDns: () => fetchCatchDns,
|
|
66
60
|
forkTask: () => forkTask,
|
|
67
61
|
forkTaskJoin: () => forkTaskJoin,
|
|
68
62
|
generate: () => generate,
|
|
@@ -87,7 +81,9 @@ __export(conductor_javascript_exports, {
|
|
|
87
81
|
kafkaPublishTask: () => kafkaPublishTask,
|
|
88
82
|
newLoopTask: () => newLoopTask,
|
|
89
83
|
noopErrorHandler: () => noopErrorHandler,
|
|
84
|
+
noopLogger: () => noopLogger,
|
|
90
85
|
orkesConductorClient: () => orkesConductorClient,
|
|
86
|
+
request: () => request2,
|
|
91
87
|
setVariableTask: () => setVariableTask,
|
|
92
88
|
simpleTask: () => simpleTask,
|
|
93
89
|
sqsEventTask: () => sqsEventTask,
|
|
@@ -95,200 +91,13 @@ __export(conductor_javascript_exports, {
|
|
|
95
91
|
switchTask: () => switchTask,
|
|
96
92
|
taskGenMapper: () => taskGenMapper,
|
|
97
93
|
terminateTask: () => terminateTask,
|
|
94
|
+
toMaybeUrl: () => toMaybeUrl,
|
|
98
95
|
waitTaskDuration: () => waitTaskDuration,
|
|
99
96
|
waitTaskUntil: () => waitTaskUntil,
|
|
100
97
|
workflow: () => workflow
|
|
101
98
|
});
|
|
102
99
|
module.exports = __toCommonJS(conductor_javascript_exports);
|
|
103
100
|
|
|
104
|
-
// src/task/helpers.ts
|
|
105
|
-
var noopLogger = {
|
|
106
|
-
debug: (...args) => {
|
|
107
|
-
},
|
|
108
|
-
info: (...args) => {
|
|
109
|
-
},
|
|
110
|
-
error: (...args) => {
|
|
111
|
-
}
|
|
112
|
-
};
|
|
113
|
-
|
|
114
|
-
// src/task/Poller.ts
|
|
115
|
-
var Poller = class {
|
|
116
|
-
constructor(pollFunction, pollerOptions, logger) {
|
|
117
|
-
this.concurrentCalls = [];
|
|
118
|
-
this.pollFunction = async () => {
|
|
119
|
-
};
|
|
120
|
-
this.isPolling = false;
|
|
121
|
-
this.options = {
|
|
122
|
-
pollInterval: 1e3,
|
|
123
|
-
concurrency: 1
|
|
124
|
-
};
|
|
125
|
-
this.logger = noopLogger;
|
|
126
|
-
this.startPolling = () => {
|
|
127
|
-
if (this.isPolling) {
|
|
128
|
-
throw new Error("Runner is already started");
|
|
129
|
-
}
|
|
130
|
-
return this.poll();
|
|
131
|
-
};
|
|
132
|
-
this.stopPolling = () => {
|
|
133
|
-
this.isPolling = false;
|
|
134
|
-
this.concurrentCalls.forEach((call) => call.stop());
|
|
135
|
-
};
|
|
136
|
-
this.poll = async () => {
|
|
137
|
-
if (!this.isPolling) {
|
|
138
|
-
this.isPolling = true;
|
|
139
|
-
for (let i = 0; i < this.options.concurrency; i++) {
|
|
140
|
-
this.concurrentCalls.push(this.singlePoll());
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
this.singlePoll = () => {
|
|
145
|
-
let poll = this.isPolling;
|
|
146
|
-
let timeout;
|
|
147
|
-
const pollingCall = async () => {
|
|
148
|
-
while (poll) {
|
|
149
|
-
await this.pollFunction();
|
|
150
|
-
await new Promise((r) => timeout = setTimeout(() => r(true), this.options.pollInterval));
|
|
151
|
-
}
|
|
152
|
-
};
|
|
153
|
-
return {
|
|
154
|
-
promise: pollingCall(),
|
|
155
|
-
stop: () => {
|
|
156
|
-
clearTimeout(timeout);
|
|
157
|
-
poll = false;
|
|
158
|
-
this.logger.debug("stopping single poll call");
|
|
159
|
-
}
|
|
160
|
-
};
|
|
161
|
-
};
|
|
162
|
-
this.pollFunction = pollFunction;
|
|
163
|
-
this.options = __spreadValues(__spreadValues({}, this.options), pollerOptions);
|
|
164
|
-
this.logger = logger || noopLogger;
|
|
165
|
-
}
|
|
166
|
-
updateConcurrency(concurrency) {
|
|
167
|
-
if (concurrency > 0 && concurrency !== this.options.concurrency) {
|
|
168
|
-
if (concurrency < this.options.concurrency) {
|
|
169
|
-
const result = this.concurrentCalls.splice(0, this.options.concurrency - concurrency);
|
|
170
|
-
result.forEach((call) => {
|
|
171
|
-
call.stop();
|
|
172
|
-
this.logger.debug("stopping some spawned calls");
|
|
173
|
-
});
|
|
174
|
-
} else {
|
|
175
|
-
for (let i = 0; i < concurrency - this.options.concurrency; i++) {
|
|
176
|
-
this.concurrentCalls.push(this.singlePoll());
|
|
177
|
-
this.logger.debug("spawning additional poll calls");
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
this.options.concurrency = concurrency;
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
updateOptions(options) {
|
|
184
|
-
const newOptions = __spreadValues(__spreadValues({}, this.options), options);
|
|
185
|
-
this.updateConcurrency(newOptions.concurrency);
|
|
186
|
-
this.options = newOptions;
|
|
187
|
-
}
|
|
188
|
-
};
|
|
189
|
-
|
|
190
|
-
// src/task/TaskRunner.ts
|
|
191
|
-
var DEFAULT_ERROR_MESSAGE = "An unknown error occurred";
|
|
192
|
-
var MAX_RETRIES = 3;
|
|
193
|
-
var noopErrorHandler = (__error) => {
|
|
194
|
-
};
|
|
195
|
-
var TaskRunner = class {
|
|
196
|
-
constructor({
|
|
197
|
-
worker,
|
|
198
|
-
taskResource,
|
|
199
|
-
options,
|
|
200
|
-
logger = noopLogger,
|
|
201
|
-
onError: errorHandler = noopErrorHandler
|
|
202
|
-
}) {
|
|
203
|
-
this.startPolling = () => {
|
|
204
|
-
this.poller.startPolling();
|
|
205
|
-
};
|
|
206
|
-
this.stopPolling = () => {
|
|
207
|
-
this.poller.stopPolling();
|
|
208
|
-
};
|
|
209
|
-
this.pollAndExecute = async () => {
|
|
210
|
-
try {
|
|
211
|
-
const { workerID } = this.options;
|
|
212
|
-
const task = await this.taskResource.poll(this.worker.taskDefName, workerID, this.worker.domain ?? this.options.domain);
|
|
213
|
-
if (task && task.taskId) {
|
|
214
|
-
await this.executeTask(task);
|
|
215
|
-
} else {
|
|
216
|
-
this.logger.debug(`No tasks for ${this.worker.taskDefName}`);
|
|
217
|
-
}
|
|
218
|
-
} catch (unknownError) {
|
|
219
|
-
this.handleUnknownError(unknownError);
|
|
220
|
-
this.errorHandler(unknownError);
|
|
221
|
-
}
|
|
222
|
-
};
|
|
223
|
-
this.updateTaskWithRetry = async (task, taskResult) => {
|
|
224
|
-
let retryCount = 0;
|
|
225
|
-
while (retryCount < MAX_RETRIES) {
|
|
226
|
-
try {
|
|
227
|
-
await this.taskResource.updateTask1(taskResult);
|
|
228
|
-
return;
|
|
229
|
-
} catch (error) {
|
|
230
|
-
this.errorHandler(error, task);
|
|
231
|
-
this.logger.error(`Error updating task ${taskResult.taskId} on retry ${retryCount}`, error);
|
|
232
|
-
retryCount++;
|
|
233
|
-
await new Promise((r) => setTimeout(() => r(true), retryCount * 10));
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
this.logger.error(`Unable to update task ${taskResult.taskId} after ${retryCount} retries`);
|
|
237
|
-
};
|
|
238
|
-
this.executeTask = async (task) => {
|
|
239
|
-
try {
|
|
240
|
-
const result = await this.worker.execute(task);
|
|
241
|
-
await this.updateTaskWithRetry(task, __spreadProps(__spreadValues({}, result), {
|
|
242
|
-
workflowInstanceId: task.workflowInstanceId,
|
|
243
|
-
taskId: task.taskId
|
|
244
|
-
}));
|
|
245
|
-
this.logger.debug(`Finished polling for task ${task.taskId}`);
|
|
246
|
-
} catch (error) {
|
|
247
|
-
await this.updateTaskWithRetry(task, {
|
|
248
|
-
workflowInstanceId: task.workflowInstanceId,
|
|
249
|
-
taskId: task.taskId,
|
|
250
|
-
reasonForIncompletion: error?.message ?? DEFAULT_ERROR_MESSAGE,
|
|
251
|
-
status: "FAILED",
|
|
252
|
-
outputData: {}
|
|
253
|
-
});
|
|
254
|
-
this.errorHandler(error, task);
|
|
255
|
-
this.logger.error(`Error executing ${task.taskId}`, error);
|
|
256
|
-
}
|
|
257
|
-
};
|
|
258
|
-
this.handleUnknownError = (unknownError) => {
|
|
259
|
-
let message = "";
|
|
260
|
-
let stack = "";
|
|
261
|
-
if (unknownError.stack) {
|
|
262
|
-
stack = unknownError.stack;
|
|
263
|
-
}
|
|
264
|
-
if (unknownError.message) {
|
|
265
|
-
message = unknownError.message;
|
|
266
|
-
}
|
|
267
|
-
this.logger.error(`Error for ${this.worker.taskDefName}: error: ${message}, stack: ${stack}`);
|
|
268
|
-
};
|
|
269
|
-
this.taskResource = taskResource;
|
|
270
|
-
this.logger = logger;
|
|
271
|
-
this.worker = worker;
|
|
272
|
-
this.options = options;
|
|
273
|
-
this.errorHandler = errorHandler;
|
|
274
|
-
this.poller = new Poller(this.pollAndExecute, { concurrency: options.concurrency, pollInterval: options.pollInterval }, this.logger);
|
|
275
|
-
}
|
|
276
|
-
updateOptions(options) {
|
|
277
|
-
const newOptions = __spreadValues(__spreadValues({}, this.options), options);
|
|
278
|
-
this.poller.updateOptions({
|
|
279
|
-
concurrency: newOptions.concurrency,
|
|
280
|
-
pollInterval: newOptions.pollInterval
|
|
281
|
-
});
|
|
282
|
-
this.options = newOptions;
|
|
283
|
-
}
|
|
284
|
-
get getOptions() {
|
|
285
|
-
return this.options;
|
|
286
|
-
}
|
|
287
|
-
};
|
|
288
|
-
|
|
289
|
-
// src/task/TaskManager.ts
|
|
290
|
-
var import_os = __toESM(require("os"));
|
|
291
|
-
|
|
292
101
|
// src/common/ConductorLogger.ts
|
|
293
102
|
var LOG_LEVELS = {
|
|
294
103
|
DEBUG: 10,
|
|
@@ -328,96 +137,57 @@ var DefaultLogger = class {
|
|
|
328
137
|
}
|
|
329
138
|
}
|
|
330
139
|
};
|
|
331
|
-
|
|
332
|
-
//
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
}
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
}
|
|
341
|
-
};
|
|
342
|
-
var CancelablePromise = class {
|
|
343
|
-
constructor(executor) {
|
|
344
|
-
this._isResolved = false;
|
|
345
|
-
this._isRejected = false;
|
|
346
|
-
this._isCancelled = false;
|
|
347
|
-
this._cancelHandlers = [];
|
|
348
|
-
this._promise = new Promise((resolve2, reject) => {
|
|
349
|
-
this._resolve = resolve2;
|
|
350
|
-
this._reject = reject;
|
|
351
|
-
const onResolve = (value) => {
|
|
352
|
-
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
353
|
-
return;
|
|
354
|
-
}
|
|
355
|
-
this._isResolved = true;
|
|
356
|
-
this._resolve?.(value);
|
|
357
|
-
};
|
|
358
|
-
const onReject = (reason) => {
|
|
359
|
-
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
360
|
-
return;
|
|
361
|
-
}
|
|
362
|
-
this._isRejected = true;
|
|
363
|
-
this._reject?.(reason);
|
|
364
|
-
};
|
|
365
|
-
const onCancel = (cancelHandler) => {
|
|
366
|
-
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
367
|
-
return;
|
|
368
|
-
}
|
|
369
|
-
this._cancelHandlers.push(cancelHandler);
|
|
370
|
-
};
|
|
371
|
-
Object.defineProperty(onCancel, "isResolved", {
|
|
372
|
-
get: () => this._isResolved
|
|
373
|
-
});
|
|
374
|
-
Object.defineProperty(onCancel, "isRejected", {
|
|
375
|
-
get: () => this._isRejected
|
|
376
|
-
});
|
|
377
|
-
Object.defineProperty(onCancel, "isCancelled", {
|
|
378
|
-
get: () => this._isCancelled
|
|
379
|
-
});
|
|
380
|
-
return executor(onResolve, onReject, onCancel);
|
|
381
|
-
});
|
|
382
|
-
}
|
|
383
|
-
then(onFulfilled, onRejected) {
|
|
384
|
-
return this._promise.then(onFulfilled, onRejected);
|
|
385
|
-
}
|
|
386
|
-
catch(onRejected) {
|
|
387
|
-
return this._promise.catch(onRejected);
|
|
388
|
-
}
|
|
389
|
-
finally(onFinally) {
|
|
390
|
-
return this._promise.finally(onFinally);
|
|
391
|
-
}
|
|
392
|
-
cancel() {
|
|
393
|
-
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
394
|
-
return;
|
|
395
|
-
}
|
|
396
|
-
this._isCancelled = true;
|
|
397
|
-
if (this._cancelHandlers.length) {
|
|
398
|
-
try {
|
|
399
|
-
for (const cancelHandler of this._cancelHandlers) {
|
|
400
|
-
cancelHandler();
|
|
401
|
-
}
|
|
402
|
-
} catch (error) {
|
|
403
|
-
console.warn("Cancellation threw an error", error);
|
|
404
|
-
return;
|
|
405
|
-
}
|
|
406
|
-
}
|
|
407
|
-
this._cancelHandlers.length = 0;
|
|
408
|
-
this._reject?.(new CancelError("Request aborted"));
|
|
409
|
-
}
|
|
410
|
-
get isCancelled() {
|
|
411
|
-
return this._isCancelled;
|
|
140
|
+
var noopLogger = {
|
|
141
|
+
//eslint-disable-next-line
|
|
142
|
+
debug: (...args) => {
|
|
143
|
+
},
|
|
144
|
+
//eslint-disable-next-line
|
|
145
|
+
info: (...args) => {
|
|
146
|
+
},
|
|
147
|
+
//eslint-disable-next-line
|
|
148
|
+
error: (...args) => {
|
|
412
149
|
}
|
|
413
150
|
};
|
|
414
|
-
|
|
151
|
+
|
|
152
|
+
// src/common/types.ts
|
|
153
|
+
var TaskType = /* @__PURE__ */ ((TaskType2) => {
|
|
154
|
+
TaskType2["START"] = "START";
|
|
155
|
+
TaskType2["SIMPLE"] = "SIMPLE";
|
|
156
|
+
TaskType2["DYNAMIC"] = "DYNAMIC";
|
|
157
|
+
TaskType2["FORK_JOIN"] = "FORK_JOIN";
|
|
158
|
+
TaskType2["FORK_JOIN_DYNAMIC"] = "FORK_JOIN_DYNAMIC";
|
|
159
|
+
TaskType2["DECISION"] = "DECISION";
|
|
160
|
+
TaskType2["SWITCH"] = "SWITCH";
|
|
161
|
+
TaskType2["JOIN"] = "JOIN";
|
|
162
|
+
TaskType2["DO_WHILE"] = "DO_WHILE";
|
|
163
|
+
TaskType2["SUB_WORKFLOW"] = "SUB_WORKFLOW";
|
|
164
|
+
TaskType2["EVENT"] = "EVENT";
|
|
165
|
+
TaskType2["WAIT"] = "WAIT";
|
|
166
|
+
TaskType2["USER_DEFINED"] = "USER_DEFINED";
|
|
167
|
+
TaskType2["HTTP"] = "HTTP";
|
|
168
|
+
TaskType2["LAMBDA"] = "LAMBDA";
|
|
169
|
+
TaskType2["INLINE"] = "INLINE";
|
|
170
|
+
TaskType2["EXCLUSIVE_JOIN"] = "EXCLUSIVE_JOIN";
|
|
171
|
+
TaskType2["TERMINAL"] = "TERMINAL";
|
|
172
|
+
TaskType2["TERMINATE"] = "TERMINATE";
|
|
173
|
+
TaskType2["KAFKA_PUBLISH"] = "KAFKA_PUBLISH";
|
|
174
|
+
TaskType2["JSON_JQ_TRANSFORM"] = "JSON_JQ_TRANSFORM";
|
|
175
|
+
TaskType2["SET_VARIABLE"] = "SET_VARIABLE";
|
|
176
|
+
return TaskType2;
|
|
177
|
+
})(TaskType || {});
|
|
415
178
|
|
|
416
179
|
// src/common/open-api/services/EventResourceService.ts
|
|
417
180
|
var EventResourceService = class {
|
|
418
181
|
constructor(httpRequest) {
|
|
419
182
|
this.httpRequest = httpRequest;
|
|
420
183
|
}
|
|
184
|
+
/**
|
|
185
|
+
* Get queue config by name
|
|
186
|
+
* @param queueType
|
|
187
|
+
* @param queueName
|
|
188
|
+
* @returns any OK
|
|
189
|
+
* @throws ApiError
|
|
190
|
+
*/
|
|
421
191
|
getQueueConfig(queueType, queueName) {
|
|
422
192
|
return this.httpRequest.request({
|
|
423
193
|
method: "GET",
|
|
@@ -428,6 +198,14 @@ var EventResourceService = class {
|
|
|
428
198
|
}
|
|
429
199
|
});
|
|
430
200
|
}
|
|
201
|
+
/**
|
|
202
|
+
* Create or update queue config by name
|
|
203
|
+
* @param queueType
|
|
204
|
+
* @param queueName
|
|
205
|
+
* @param requestBody
|
|
206
|
+
* @returns any OK
|
|
207
|
+
* @throws ApiError
|
|
208
|
+
*/
|
|
431
209
|
putQueueConfig(queueType, queueName, requestBody) {
|
|
432
210
|
return this.httpRequest.request({
|
|
433
211
|
method: "PUT",
|
|
@@ -440,6 +218,13 @@ var EventResourceService = class {
|
|
|
440
218
|
mediaType: "application/json"
|
|
441
219
|
});
|
|
442
220
|
}
|
|
221
|
+
/**
|
|
222
|
+
* Delete queue config by name
|
|
223
|
+
* @param queueType
|
|
224
|
+
* @param queueName
|
|
225
|
+
* @returns any OK
|
|
226
|
+
* @throws ApiError
|
|
227
|
+
*/
|
|
443
228
|
deleteQueueConfig(queueType, queueName) {
|
|
444
229
|
return this.httpRequest.request({
|
|
445
230
|
method: "DELETE",
|
|
@@ -450,12 +235,23 @@ var EventResourceService = class {
|
|
|
450
235
|
}
|
|
451
236
|
});
|
|
452
237
|
}
|
|
238
|
+
/**
|
|
239
|
+
* Get all the event handlers
|
|
240
|
+
* @returns EventHandler OK
|
|
241
|
+
* @throws ApiError
|
|
242
|
+
*/
|
|
453
243
|
getEventHandlers() {
|
|
454
244
|
return this.httpRequest.request({
|
|
455
245
|
method: "GET",
|
|
456
246
|
url: "/event"
|
|
457
247
|
});
|
|
458
248
|
}
|
|
249
|
+
/**
|
|
250
|
+
* Update an existing event handler.
|
|
251
|
+
* @param requestBody
|
|
252
|
+
* @returns any OK
|
|
253
|
+
* @throws ApiError
|
|
254
|
+
*/
|
|
459
255
|
updateEventHandler(requestBody) {
|
|
460
256
|
return this.httpRequest.request({
|
|
461
257
|
method: "PUT",
|
|
@@ -464,6 +260,12 @@ var EventResourceService = class {
|
|
|
464
260
|
mediaType: "application/json"
|
|
465
261
|
});
|
|
466
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Add a new event handler.
|
|
265
|
+
* @param requestBody
|
|
266
|
+
* @returns any OK
|
|
267
|
+
* @throws ApiError
|
|
268
|
+
*/
|
|
467
269
|
addEventHandler(requestBody) {
|
|
468
270
|
return this.httpRequest.request({
|
|
469
271
|
method: "POST",
|
|
@@ -472,12 +274,23 @@ var EventResourceService = class {
|
|
|
472
274
|
mediaType: "application/json"
|
|
473
275
|
});
|
|
474
276
|
}
|
|
277
|
+
/**
|
|
278
|
+
* Get all queue configs
|
|
279
|
+
* @returns any OK
|
|
280
|
+
* @throws ApiError
|
|
281
|
+
*/
|
|
475
282
|
getQueueNames() {
|
|
476
283
|
return this.httpRequest.request({
|
|
477
284
|
method: "GET",
|
|
478
285
|
url: "/event/queue/config"
|
|
479
286
|
});
|
|
480
287
|
}
|
|
288
|
+
/**
|
|
289
|
+
* Remove an event handler
|
|
290
|
+
* @param name
|
|
291
|
+
* @returns any OK
|
|
292
|
+
* @throws ApiError
|
|
293
|
+
*/
|
|
481
294
|
removeEventHandlerStatus(name) {
|
|
482
295
|
return this.httpRequest.request({
|
|
483
296
|
method: "DELETE",
|
|
@@ -487,6 +300,13 @@ var EventResourceService = class {
|
|
|
487
300
|
}
|
|
488
301
|
});
|
|
489
302
|
}
|
|
303
|
+
/**
|
|
304
|
+
* Get event handlers for a given event
|
|
305
|
+
* @param event
|
|
306
|
+
* @param activeOnly
|
|
307
|
+
* @returns EventHandler OK
|
|
308
|
+
* @throws ApiError
|
|
309
|
+
*/
|
|
490
310
|
getEventHandlersForEvent(event, activeOnly = true) {
|
|
491
311
|
return this.httpRequest.request({
|
|
492
312
|
method: "GET",
|
|
@@ -506,6 +326,10 @@ var HealthCheckResourceService = class {
|
|
|
506
326
|
constructor(httpRequest) {
|
|
507
327
|
this.httpRequest = httpRequest;
|
|
508
328
|
}
|
|
329
|
+
/**
|
|
330
|
+
* @returns any OK
|
|
331
|
+
* @throws ApiError
|
|
332
|
+
*/
|
|
509
333
|
doCheck() {
|
|
510
334
|
return this.httpRequest.request({
|
|
511
335
|
method: "GET",
|
|
@@ -519,6 +343,13 @@ var MetadataResourceService = class {
|
|
|
519
343
|
constructor(httpRequest) {
|
|
520
344
|
this.httpRequest = httpRequest;
|
|
521
345
|
}
|
|
346
|
+
/**
|
|
347
|
+
* Gets the task definition
|
|
348
|
+
* @param tasktype
|
|
349
|
+
* @param metadata
|
|
350
|
+
* @returns TaskDef OK
|
|
351
|
+
* @throws ApiError
|
|
352
|
+
*/
|
|
522
353
|
getTaskDef(tasktype, metadata = false) {
|
|
523
354
|
return this.httpRequest.request({
|
|
524
355
|
method: "GET",
|
|
@@ -531,6 +362,12 @@ var MetadataResourceService = class {
|
|
|
531
362
|
}
|
|
532
363
|
});
|
|
533
364
|
}
|
|
365
|
+
/**
|
|
366
|
+
* Remove a task definition
|
|
367
|
+
* @param tasktype
|
|
368
|
+
* @returns any OK
|
|
369
|
+
* @throws ApiError
|
|
370
|
+
*/
|
|
534
371
|
unregisterTaskDef(tasktype) {
|
|
535
372
|
return this.httpRequest.request({
|
|
536
373
|
method: "DELETE",
|
|
@@ -540,6 +377,15 @@ var MetadataResourceService = class {
|
|
|
540
377
|
}
|
|
541
378
|
});
|
|
542
379
|
}
|
|
380
|
+
/**
|
|
381
|
+
* Retrieves all workflow definition along with blueprint
|
|
382
|
+
* @param access
|
|
383
|
+
* @param metadata
|
|
384
|
+
* @param tagKey
|
|
385
|
+
* @param tagValue
|
|
386
|
+
* @returns WorkflowDef OK
|
|
387
|
+
* @throws ApiError
|
|
388
|
+
*/
|
|
543
389
|
getAllWorkflows(access = "READ", metadata = false, tagKey, tagValue) {
|
|
544
390
|
return this.httpRequest.request({
|
|
545
391
|
method: "GET",
|
|
@@ -552,6 +398,13 @@ var MetadataResourceService = class {
|
|
|
552
398
|
}
|
|
553
399
|
});
|
|
554
400
|
}
|
|
401
|
+
/**
|
|
402
|
+
* Create or update workflow definition(s)
|
|
403
|
+
* @param requestBody
|
|
404
|
+
* @param overwrite
|
|
405
|
+
* @returns any OK
|
|
406
|
+
* @throws ApiError
|
|
407
|
+
*/
|
|
555
408
|
update(requestBody, overwrite = true) {
|
|
556
409
|
return this.httpRequest.request({
|
|
557
410
|
method: "PUT",
|
|
@@ -563,6 +416,13 @@ var MetadataResourceService = class {
|
|
|
563
416
|
mediaType: "application/json"
|
|
564
417
|
});
|
|
565
418
|
}
|
|
419
|
+
/**
|
|
420
|
+
* Create a new workflow definition
|
|
421
|
+
* @param requestBody
|
|
422
|
+
* @param overwrite
|
|
423
|
+
* @returns any OK
|
|
424
|
+
* @throws ApiError
|
|
425
|
+
*/
|
|
566
426
|
create(requestBody, overwrite = false) {
|
|
567
427
|
return this.httpRequest.request({
|
|
568
428
|
method: "POST",
|
|
@@ -574,6 +434,15 @@ var MetadataResourceService = class {
|
|
|
574
434
|
mediaType: "application/json"
|
|
575
435
|
});
|
|
576
436
|
}
|
|
437
|
+
/**
|
|
438
|
+
* Gets all task definition
|
|
439
|
+
* @param access
|
|
440
|
+
* @param metadata
|
|
441
|
+
* @param tagKey
|
|
442
|
+
* @param tagValue
|
|
443
|
+
* @returns TaskDef OK
|
|
444
|
+
* @throws ApiError
|
|
445
|
+
*/
|
|
577
446
|
getTaskDefs(access = "READ", metadata = false, tagKey, tagValue) {
|
|
578
447
|
return this.httpRequest.request({
|
|
579
448
|
method: "GET",
|
|
@@ -586,6 +455,12 @@ var MetadataResourceService = class {
|
|
|
586
455
|
}
|
|
587
456
|
});
|
|
588
457
|
}
|
|
458
|
+
/**
|
|
459
|
+
* Update an existing task
|
|
460
|
+
* @param requestBody
|
|
461
|
+
* @returns any OK
|
|
462
|
+
* @throws ApiError
|
|
463
|
+
*/
|
|
589
464
|
updateTaskDef(requestBody) {
|
|
590
465
|
return this.httpRequest.request({
|
|
591
466
|
method: "PUT",
|
|
@@ -594,6 +469,12 @@ var MetadataResourceService = class {
|
|
|
594
469
|
mediaType: "application/json"
|
|
595
470
|
});
|
|
596
471
|
}
|
|
472
|
+
/**
|
|
473
|
+
* Create or update task definition(s)
|
|
474
|
+
* @param requestBody
|
|
475
|
+
* @returns any OK
|
|
476
|
+
* @throws ApiError
|
|
477
|
+
*/
|
|
597
478
|
registerTaskDef(requestBody) {
|
|
598
479
|
return this.httpRequest.request({
|
|
599
480
|
method: "POST",
|
|
@@ -602,6 +483,13 @@ var MetadataResourceService = class {
|
|
|
602
483
|
mediaType: "application/json"
|
|
603
484
|
});
|
|
604
485
|
}
|
|
486
|
+
/**
|
|
487
|
+
* Removes workflow definition. It does not remove workflows associated with the definition.
|
|
488
|
+
* @param name
|
|
489
|
+
* @param version
|
|
490
|
+
* @returns any OK
|
|
491
|
+
* @throws ApiError
|
|
492
|
+
*/
|
|
605
493
|
unregisterWorkflowDef(name, version) {
|
|
606
494
|
return this.httpRequest.request({
|
|
607
495
|
method: "DELETE",
|
|
@@ -612,6 +500,14 @@ var MetadataResourceService = class {
|
|
|
612
500
|
}
|
|
613
501
|
});
|
|
614
502
|
}
|
|
503
|
+
/**
|
|
504
|
+
* Retrieves workflow definition along with blueprint
|
|
505
|
+
* @param name
|
|
506
|
+
* @param version
|
|
507
|
+
* @param metadata
|
|
508
|
+
* @returns WorkflowDef OK
|
|
509
|
+
* @throws ApiError
|
|
510
|
+
*/
|
|
615
511
|
get(name, version, metadata = false) {
|
|
616
512
|
return this.httpRequest.request({
|
|
617
513
|
method: "GET",
|
|
@@ -632,6 +528,12 @@ var SchedulerResourceService = class {
|
|
|
632
528
|
constructor(httpRequest) {
|
|
633
529
|
this.httpRequest = httpRequest;
|
|
634
530
|
}
|
|
531
|
+
/**
|
|
532
|
+
* Get an existing workflow schedule by name
|
|
533
|
+
* @param name
|
|
534
|
+
* @returns any OK
|
|
535
|
+
* @throws ApiError
|
|
536
|
+
*/
|
|
635
537
|
getSchedule(name) {
|
|
636
538
|
return this.httpRequest.request({
|
|
637
539
|
method: "GET",
|
|
@@ -641,6 +543,12 @@ var SchedulerResourceService = class {
|
|
|
641
543
|
}
|
|
642
544
|
});
|
|
643
545
|
}
|
|
546
|
+
/**
|
|
547
|
+
* Deletes an existing workflow schedule by name
|
|
548
|
+
* @param name
|
|
549
|
+
* @returns any OK
|
|
550
|
+
* @throws ApiError
|
|
551
|
+
*/
|
|
644
552
|
deleteSchedule(name) {
|
|
645
553
|
return this.httpRequest.request({
|
|
646
554
|
method: "DELETE",
|
|
@@ -650,6 +558,15 @@ var SchedulerResourceService = class {
|
|
|
650
558
|
}
|
|
651
559
|
});
|
|
652
560
|
}
|
|
561
|
+
/**
|
|
562
|
+
* Get list of the next x (default 3, max 5) execution times for a scheduler
|
|
563
|
+
* @param cronExpression
|
|
564
|
+
* @param scheduleStartTime
|
|
565
|
+
* @param scheduleEndTime
|
|
566
|
+
* @param limit
|
|
567
|
+
* @returns number OK
|
|
568
|
+
* @throws ApiError
|
|
569
|
+
*/
|
|
653
570
|
getNextFewSchedules(cronExpression, scheduleStartTime, scheduleEndTime, limit = 3) {
|
|
654
571
|
return this.httpRequest.request({
|
|
655
572
|
method: "GET",
|
|
@@ -662,6 +579,12 @@ var SchedulerResourceService = class {
|
|
|
662
579
|
}
|
|
663
580
|
});
|
|
664
581
|
}
|
|
582
|
+
/**
|
|
583
|
+
* Pauses an existing schedule by name
|
|
584
|
+
* @param name
|
|
585
|
+
* @returns any OK
|
|
586
|
+
* @throws ApiError
|
|
587
|
+
*/
|
|
665
588
|
pauseSchedule(name) {
|
|
666
589
|
return this.httpRequest.request({
|
|
667
590
|
method: "GET",
|
|
@@ -671,12 +594,23 @@ var SchedulerResourceService = class {
|
|
|
671
594
|
}
|
|
672
595
|
});
|
|
673
596
|
}
|
|
597
|
+
/**
|
|
598
|
+
* Pause all scheduling in a single conductor server instance (for debugging only)
|
|
599
|
+
* @returns any OK
|
|
600
|
+
* @throws ApiError
|
|
601
|
+
*/
|
|
674
602
|
pauseAllSchedules() {
|
|
675
603
|
return this.httpRequest.request({
|
|
676
604
|
method: "GET",
|
|
677
605
|
url: "/scheduler/admin/pause"
|
|
678
606
|
});
|
|
679
607
|
}
|
|
608
|
+
/**
|
|
609
|
+
* Resume a paused schedule by name
|
|
610
|
+
* @param name
|
|
611
|
+
* @returns any OK
|
|
612
|
+
* @throws ApiError
|
|
613
|
+
*/
|
|
680
614
|
resumeSchedule(name) {
|
|
681
615
|
return this.httpRequest.request({
|
|
682
616
|
method: "GET",
|
|
@@ -686,18 +620,34 @@ var SchedulerResourceService = class {
|
|
|
686
620
|
}
|
|
687
621
|
});
|
|
688
622
|
}
|
|
623
|
+
/**
|
|
624
|
+
* Requeue all execution records
|
|
625
|
+
* @returns any OK
|
|
626
|
+
* @throws ApiError
|
|
627
|
+
*/
|
|
689
628
|
requeueAllExecutionRecords() {
|
|
690
629
|
return this.httpRequest.request({
|
|
691
630
|
method: "GET",
|
|
692
631
|
url: "/scheduler/admin/requeue"
|
|
693
632
|
});
|
|
694
633
|
}
|
|
634
|
+
/**
|
|
635
|
+
* Resume all scheduling
|
|
636
|
+
* @returns any OK
|
|
637
|
+
* @throws ApiError
|
|
638
|
+
*/
|
|
695
639
|
resumeAllSchedules() {
|
|
696
640
|
return this.httpRequest.request({
|
|
697
641
|
method: "GET",
|
|
698
642
|
url: "/scheduler/admin/resume"
|
|
699
643
|
});
|
|
700
644
|
}
|
|
645
|
+
/**
|
|
646
|
+
* Get all existing workflow schedules and optionally filter by workflow name
|
|
647
|
+
* @param workflowName
|
|
648
|
+
* @returns WorkflowSchedule OK
|
|
649
|
+
* @throws ApiError
|
|
650
|
+
*/
|
|
701
651
|
getAllSchedules(workflowName) {
|
|
702
652
|
return this.httpRequest.request({
|
|
703
653
|
method: "GET",
|
|
@@ -707,6 +657,12 @@ var SchedulerResourceService = class {
|
|
|
707
657
|
}
|
|
708
658
|
});
|
|
709
659
|
}
|
|
660
|
+
/**
|
|
661
|
+
* Create or update a schedule for a specified workflow with a corresponding start workflow request
|
|
662
|
+
* @param requestBody
|
|
663
|
+
* @returns any OK
|
|
664
|
+
* @throws ApiError
|
|
665
|
+
*/
|
|
710
666
|
saveSchedule(requestBody) {
|
|
711
667
|
return this.httpRequest.request({
|
|
712
668
|
method: "POST",
|
|
@@ -715,12 +671,28 @@ var SchedulerResourceService = class {
|
|
|
715
671
|
mediaType: "application/json"
|
|
716
672
|
});
|
|
717
673
|
}
|
|
674
|
+
/**
|
|
675
|
+
* Test timeout - do not use in production
|
|
676
|
+
* @returns any OK
|
|
677
|
+
* @throws ApiError
|
|
678
|
+
*/
|
|
718
679
|
testTimeout() {
|
|
719
680
|
return this.httpRequest.request({
|
|
720
681
|
method: "GET",
|
|
721
682
|
url: "/scheduler/test/timeout"
|
|
722
683
|
});
|
|
723
684
|
}
|
|
685
|
+
/**
|
|
686
|
+
* Search for workflows based on payload and other parameters
|
|
687
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC.
|
|
688
|
+
* @param start
|
|
689
|
+
* @param size
|
|
690
|
+
* @param sort
|
|
691
|
+
* @param freeText
|
|
692
|
+
* @param query
|
|
693
|
+
* @returns SearchResultWorkflowScheduleExecutionModel OK
|
|
694
|
+
* @throws ApiError
|
|
695
|
+
*/
|
|
724
696
|
searchV21(start, size = 100, sort, freeText = "*", query) {
|
|
725
697
|
return this.httpRequest.request({
|
|
726
698
|
method: "GET",
|
|
@@ -741,6 +713,14 @@ var TaskResourceService = class {
|
|
|
741
713
|
constructor(httpRequest) {
|
|
742
714
|
this.httpRequest = httpRequest;
|
|
743
715
|
}
|
|
716
|
+
/**
|
|
717
|
+
* Poll for a task of a certain type
|
|
718
|
+
* @param tasktype
|
|
719
|
+
* @param workerid
|
|
720
|
+
* @param domain
|
|
721
|
+
* @returns Task OK
|
|
722
|
+
* @throws ApiError
|
|
723
|
+
*/
|
|
744
724
|
poll(tasktype, workerid, domain) {
|
|
745
725
|
return this.httpRequest.request({
|
|
746
726
|
method: "GET",
|
|
@@ -754,12 +734,26 @@ var TaskResourceService = class {
|
|
|
754
734
|
}
|
|
755
735
|
});
|
|
756
736
|
}
|
|
737
|
+
/**
|
|
738
|
+
* Get the details about each queue
|
|
739
|
+
* @returns number OK
|
|
740
|
+
* @throws ApiError
|
|
741
|
+
*/
|
|
757
742
|
allVerbose() {
|
|
758
743
|
return this.httpRequest.request({
|
|
759
744
|
method: "GET",
|
|
760
745
|
url: "/tasks/queue/all/verbose"
|
|
761
746
|
});
|
|
762
747
|
}
|
|
748
|
+
/**
|
|
749
|
+
* Update a task By Ref Name
|
|
750
|
+
* @param workflowId
|
|
751
|
+
* @param taskRefName
|
|
752
|
+
* @param status
|
|
753
|
+
* @param requestBody
|
|
754
|
+
* @returns string OK
|
|
755
|
+
* @throws ApiError
|
|
756
|
+
*/
|
|
763
757
|
updateTask(workflowId, taskRefName, status, requestBody) {
|
|
764
758
|
return this.httpRequest.request({
|
|
765
759
|
method: "POST",
|
|
@@ -773,6 +767,12 @@ var TaskResourceService = class {
|
|
|
773
767
|
mediaType: "application/json"
|
|
774
768
|
});
|
|
775
769
|
}
|
|
770
|
+
/**
|
|
771
|
+
* Get task by Id
|
|
772
|
+
* @param taskId
|
|
773
|
+
* @returns Task OK
|
|
774
|
+
* @throws ApiError
|
|
775
|
+
*/
|
|
776
776
|
getTask(taskId) {
|
|
777
777
|
return this.httpRequest.request({
|
|
778
778
|
method: "GET",
|
|
@@ -782,12 +782,23 @@ var TaskResourceService = class {
|
|
|
782
782
|
}
|
|
783
783
|
});
|
|
784
784
|
}
|
|
785
|
+
/**
|
|
786
|
+
* Get the details about each queue
|
|
787
|
+
* @returns number OK
|
|
788
|
+
* @throws ApiError
|
|
789
|
+
*/
|
|
785
790
|
all() {
|
|
786
791
|
return this.httpRequest.request({
|
|
787
792
|
method: "GET",
|
|
788
793
|
url: "/tasks/queue/all"
|
|
789
794
|
});
|
|
790
795
|
}
|
|
796
|
+
/**
|
|
797
|
+
* Requeue pending tasks
|
|
798
|
+
* @param taskType
|
|
799
|
+
* @returns string OK
|
|
800
|
+
* @throws ApiError
|
|
801
|
+
*/
|
|
791
802
|
requeuePendingTask(taskType) {
|
|
792
803
|
return this.httpRequest.request({
|
|
793
804
|
method: "POST",
|
|
@@ -797,6 +808,17 @@ var TaskResourceService = class {
|
|
|
797
808
|
}
|
|
798
809
|
});
|
|
799
810
|
}
|
|
811
|
+
/**
|
|
812
|
+
* Search for tasks based in payload and other parameters
|
|
813
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC
|
|
814
|
+
* @param start
|
|
815
|
+
* @param size
|
|
816
|
+
* @param sort
|
|
817
|
+
* @param freeText
|
|
818
|
+
* @param query
|
|
819
|
+
* @returns SearchResultTaskSummary OK
|
|
820
|
+
* @throws ApiError
|
|
821
|
+
*/
|
|
800
822
|
search(start, size = 100, sort, freeText = "*", query) {
|
|
801
823
|
return this.httpRequest.request({
|
|
802
824
|
method: "GET",
|
|
@@ -810,6 +832,17 @@ var TaskResourceService = class {
|
|
|
810
832
|
}
|
|
811
833
|
});
|
|
812
834
|
}
|
|
835
|
+
/**
|
|
836
|
+
* Search for tasks based in payload and other parameters
|
|
837
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC
|
|
838
|
+
* @param start
|
|
839
|
+
* @param size
|
|
840
|
+
* @param sort
|
|
841
|
+
* @param freeText
|
|
842
|
+
* @param query
|
|
843
|
+
* @returns SearchResultTask OK
|
|
844
|
+
* @throws ApiError
|
|
845
|
+
*/
|
|
813
846
|
searchV22(start, size = 100, sort, freeText = "*", query) {
|
|
814
847
|
return this.httpRequest.request({
|
|
815
848
|
method: "GET",
|
|
@@ -823,6 +856,12 @@ var TaskResourceService = class {
|
|
|
823
856
|
}
|
|
824
857
|
});
|
|
825
858
|
}
|
|
859
|
+
/**
|
|
860
|
+
* Get the last poll data for a given task type
|
|
861
|
+
* @param taskType
|
|
862
|
+
* @returns PollData OK
|
|
863
|
+
* @throws ApiError
|
|
864
|
+
*/
|
|
826
865
|
getPollData(taskType) {
|
|
827
866
|
return this.httpRequest.request({
|
|
828
867
|
method: "GET",
|
|
@@ -832,6 +871,12 @@ var TaskResourceService = class {
|
|
|
832
871
|
}
|
|
833
872
|
});
|
|
834
873
|
}
|
|
874
|
+
/**
|
|
875
|
+
* Get Task Execution Logs
|
|
876
|
+
* @param taskId
|
|
877
|
+
* @returns TaskExecLog OK
|
|
878
|
+
* @throws ApiError
|
|
879
|
+
*/
|
|
835
880
|
getTaskLogs(taskId) {
|
|
836
881
|
return this.httpRequest.request({
|
|
837
882
|
method: "GET",
|
|
@@ -841,6 +886,13 @@ var TaskResourceService = class {
|
|
|
841
886
|
}
|
|
842
887
|
});
|
|
843
888
|
}
|
|
889
|
+
/**
|
|
890
|
+
* Log Task Execution Details
|
|
891
|
+
* @param taskId
|
|
892
|
+
* @param requestBody
|
|
893
|
+
* @returns any OK
|
|
894
|
+
* @throws ApiError
|
|
895
|
+
*/
|
|
844
896
|
log(taskId, requestBody) {
|
|
845
897
|
return this.httpRequest.request({
|
|
846
898
|
method: "POST",
|
|
@@ -852,12 +904,27 @@ var TaskResourceService = class {
|
|
|
852
904
|
mediaType: "application/json"
|
|
853
905
|
});
|
|
854
906
|
}
|
|
907
|
+
/**
|
|
908
|
+
* Get the last poll data for all task types
|
|
909
|
+
* @returns PollData OK
|
|
910
|
+
* @throws ApiError
|
|
911
|
+
*/
|
|
855
912
|
getAllPollData() {
|
|
856
913
|
return this.httpRequest.request({
|
|
857
914
|
method: "GET",
|
|
858
915
|
url: "/tasks/queue/polldata/all"
|
|
859
916
|
});
|
|
860
917
|
}
|
|
918
|
+
/**
|
|
919
|
+
* Batch poll for a task of a certain type
|
|
920
|
+
* @param tasktype
|
|
921
|
+
* @param workerid
|
|
922
|
+
* @param domain
|
|
923
|
+
* @param count
|
|
924
|
+
* @param timeout
|
|
925
|
+
* @returns Task OK
|
|
926
|
+
* @throws ApiError
|
|
927
|
+
*/
|
|
861
928
|
batchPoll(tasktype, workerid, domain, count = 1, timeout = 100) {
|
|
862
929
|
return this.httpRequest.request({
|
|
863
930
|
method: "GET",
|
|
@@ -873,6 +940,12 @@ var TaskResourceService = class {
|
|
|
873
940
|
}
|
|
874
941
|
});
|
|
875
942
|
}
|
|
943
|
+
/**
|
|
944
|
+
* Update a task
|
|
945
|
+
* @param requestBody
|
|
946
|
+
* @returns string OK
|
|
947
|
+
* @throws ApiError
|
|
948
|
+
*/
|
|
876
949
|
updateTask1(requestBody) {
|
|
877
950
|
return this.httpRequest.request({
|
|
878
951
|
method: "POST",
|
|
@@ -881,6 +954,12 @@ var TaskResourceService = class {
|
|
|
881
954
|
mediaType: "application/json"
|
|
882
955
|
});
|
|
883
956
|
}
|
|
957
|
+
/**
|
|
958
|
+
* Get Task type queue sizes
|
|
959
|
+
* @param taskType
|
|
960
|
+
* @returns number OK
|
|
961
|
+
* @throws ApiError
|
|
962
|
+
*/
|
|
884
963
|
size1(taskType) {
|
|
885
964
|
return this.httpRequest.request({
|
|
886
965
|
method: "GET",
|
|
@@ -890,6 +969,14 @@ var TaskResourceService = class {
|
|
|
890
969
|
}
|
|
891
970
|
});
|
|
892
971
|
}
|
|
972
|
+
/**
|
|
973
|
+
* Get the external uri where the task payload is to be stored
|
|
974
|
+
* @param path
|
|
975
|
+
* @param operation
|
|
976
|
+
* @param payloadType
|
|
977
|
+
* @returns ExternalStorageLocation OK
|
|
978
|
+
* @throws ApiError
|
|
979
|
+
*/
|
|
893
980
|
getExternalStorageLocation1(path, operation, payloadType) {
|
|
894
981
|
return this.httpRequest.request({
|
|
895
982
|
method: "GET",
|
|
@@ -908,6 +995,12 @@ var TokenResourceService = class {
|
|
|
908
995
|
constructor(httpRequest) {
|
|
909
996
|
this.httpRequest = httpRequest;
|
|
910
997
|
}
|
|
998
|
+
/**
|
|
999
|
+
* Generate JWT with the given access key
|
|
1000
|
+
* @param requestBody
|
|
1001
|
+
* @returns Response OK
|
|
1002
|
+
* @throws ApiError
|
|
1003
|
+
*/
|
|
911
1004
|
generateToken(requestBody) {
|
|
912
1005
|
return this.httpRequest.request({
|
|
913
1006
|
method: "POST",
|
|
@@ -916,6 +1009,11 @@ var TokenResourceService = class {
|
|
|
916
1009
|
mediaType: "application/json"
|
|
917
1010
|
});
|
|
918
1011
|
}
|
|
1012
|
+
/**
|
|
1013
|
+
* Get the user info from the token
|
|
1014
|
+
* @returns any OK
|
|
1015
|
+
* @throws ApiError
|
|
1016
|
+
*/
|
|
919
1017
|
getUserInfo() {
|
|
920
1018
|
return this.httpRequest.request({
|
|
921
1019
|
method: "GET",
|
|
@@ -929,6 +1027,12 @@ var WorkflowBulkResourceService = class {
|
|
|
929
1027
|
constructor(httpRequest) {
|
|
930
1028
|
this.httpRequest = httpRequest;
|
|
931
1029
|
}
|
|
1030
|
+
/**
|
|
1031
|
+
* Retry the last failed task for each workflow from the list
|
|
1032
|
+
* @param requestBody
|
|
1033
|
+
* @returns BulkResponse OK
|
|
1034
|
+
* @throws ApiError
|
|
1035
|
+
*/
|
|
932
1036
|
retry(requestBody) {
|
|
933
1037
|
return this.httpRequest.request({
|
|
934
1038
|
method: "POST",
|
|
@@ -937,6 +1041,13 @@ var WorkflowBulkResourceService = class {
|
|
|
937
1041
|
mediaType: "application/json"
|
|
938
1042
|
});
|
|
939
1043
|
}
|
|
1044
|
+
/**
|
|
1045
|
+
* Restart the list of completed workflow
|
|
1046
|
+
* @param requestBody
|
|
1047
|
+
* @param useLatestDefinitions
|
|
1048
|
+
* @returns BulkResponse OK
|
|
1049
|
+
* @throws ApiError
|
|
1050
|
+
*/
|
|
940
1051
|
restart(requestBody, useLatestDefinitions = false) {
|
|
941
1052
|
return this.httpRequest.request({
|
|
942
1053
|
method: "POST",
|
|
@@ -948,6 +1059,13 @@ var WorkflowBulkResourceService = class {
|
|
|
948
1059
|
mediaType: "application/json"
|
|
949
1060
|
});
|
|
950
1061
|
}
|
|
1062
|
+
/**
|
|
1063
|
+
* Terminate workflows execution
|
|
1064
|
+
* @param requestBody
|
|
1065
|
+
* @param reason
|
|
1066
|
+
* @returns BulkResponse OK
|
|
1067
|
+
* @throws ApiError
|
|
1068
|
+
*/
|
|
951
1069
|
terminate(requestBody, reason) {
|
|
952
1070
|
return this.httpRequest.request({
|
|
953
1071
|
method: "POST",
|
|
@@ -959,6 +1077,12 @@ var WorkflowBulkResourceService = class {
|
|
|
959
1077
|
mediaType: "application/json"
|
|
960
1078
|
});
|
|
961
1079
|
}
|
|
1080
|
+
/**
|
|
1081
|
+
* Resume the list of workflows
|
|
1082
|
+
* @param requestBody
|
|
1083
|
+
* @returns BulkResponse OK
|
|
1084
|
+
* @throws ApiError
|
|
1085
|
+
*/
|
|
962
1086
|
resumeWorkflow(requestBody) {
|
|
963
1087
|
return this.httpRequest.request({
|
|
964
1088
|
method: "PUT",
|
|
@@ -967,6 +1091,12 @@ var WorkflowBulkResourceService = class {
|
|
|
967
1091
|
mediaType: "application/json"
|
|
968
1092
|
});
|
|
969
1093
|
}
|
|
1094
|
+
/**
|
|
1095
|
+
* Pause the list of workflows
|
|
1096
|
+
* @param requestBody
|
|
1097
|
+
* @returns BulkResponse OK
|
|
1098
|
+
* @throws ApiError
|
|
1099
|
+
*/
|
|
970
1100
|
pauseWorkflow1(requestBody) {
|
|
971
1101
|
return this.httpRequest.request({
|
|
972
1102
|
method: "PUT",
|
|
@@ -982,6 +1112,15 @@ var WorkflowResourceService = class {
|
|
|
982
1112
|
constructor(httpRequest) {
|
|
983
1113
|
this.httpRequest = httpRequest;
|
|
984
1114
|
}
|
|
1115
|
+
/**
|
|
1116
|
+
* Retrieve all the running workflows
|
|
1117
|
+
* @param name
|
|
1118
|
+
* @param version
|
|
1119
|
+
* @param startTime
|
|
1120
|
+
* @param endTime
|
|
1121
|
+
* @returns string OK
|
|
1122
|
+
* @throws ApiError
|
|
1123
|
+
*/
|
|
985
1124
|
getRunningWorkflow(name, version = 1, startTime, endTime) {
|
|
986
1125
|
return this.httpRequest.request({
|
|
987
1126
|
method: "GET",
|
|
@@ -996,6 +1135,17 @@ var WorkflowResourceService = class {
|
|
|
996
1135
|
}
|
|
997
1136
|
});
|
|
998
1137
|
}
|
|
1138
|
+
/**
|
|
1139
|
+
* Execute a workflow synchronously
|
|
1140
|
+
* @param body
|
|
1141
|
+
* @param name
|
|
1142
|
+
* @param version
|
|
1143
|
+
* @param requestId
|
|
1144
|
+
* @param waitUntilTaskRef
|
|
1145
|
+
* @param callback
|
|
1146
|
+
* @returns workflowRun
|
|
1147
|
+
* @throws ApiError
|
|
1148
|
+
*/
|
|
999
1149
|
executeWorkflow(body, name, version, requestId, waitUntilTaskRef) {
|
|
1000
1150
|
return this.httpRequest.request({
|
|
1001
1151
|
method: "POST",
|
|
@@ -1012,6 +1162,12 @@ var WorkflowResourceService = class {
|
|
|
1012
1162
|
mediaType: "application/json"
|
|
1013
1163
|
});
|
|
1014
1164
|
}
|
|
1165
|
+
/**
|
|
1166
|
+
* Start a new workflow with StartWorkflowRequest, which allows task to be executed in a domain
|
|
1167
|
+
* @param requestBody
|
|
1168
|
+
* @returns string OK
|
|
1169
|
+
* @throws ApiError
|
|
1170
|
+
*/
|
|
1015
1171
|
startWorkflow(requestBody) {
|
|
1016
1172
|
return this.httpRequest.request({
|
|
1017
1173
|
method: "POST",
|
|
@@ -1020,6 +1176,12 @@ var WorkflowResourceService = class {
|
|
|
1020
1176
|
mediaType: "application/json"
|
|
1021
1177
|
});
|
|
1022
1178
|
}
|
|
1179
|
+
/**
|
|
1180
|
+
* Starts the decision task for a workflow
|
|
1181
|
+
* @param workflowId
|
|
1182
|
+
* @returns any OK
|
|
1183
|
+
* @throws ApiError
|
|
1184
|
+
*/
|
|
1023
1185
|
decide(workflowId) {
|
|
1024
1186
|
return this.httpRequest.request({
|
|
1025
1187
|
method: "PUT",
|
|
@@ -1029,6 +1191,13 @@ var WorkflowResourceService = class {
|
|
|
1029
1191
|
}
|
|
1030
1192
|
});
|
|
1031
1193
|
}
|
|
1194
|
+
/**
|
|
1195
|
+
* Reruns the workflow from a specific task
|
|
1196
|
+
* @param workflowId
|
|
1197
|
+
* @param requestBody
|
|
1198
|
+
* @returns string OK
|
|
1199
|
+
* @throws ApiError
|
|
1200
|
+
*/
|
|
1032
1201
|
rerun(workflowId, requestBody) {
|
|
1033
1202
|
return this.httpRequest.request({
|
|
1034
1203
|
method: "POST",
|
|
@@ -1040,6 +1209,17 @@ var WorkflowResourceService = class {
|
|
|
1040
1209
|
mediaType: "application/json"
|
|
1041
1210
|
});
|
|
1042
1211
|
}
|
|
1212
|
+
/**
|
|
1213
|
+
* Search for workflows based on payload and other parameters
|
|
1214
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC.
|
|
1215
|
+
* @param start
|
|
1216
|
+
* @param size
|
|
1217
|
+
* @param sort
|
|
1218
|
+
* @param freeText
|
|
1219
|
+
* @param query
|
|
1220
|
+
* @returns SearchResultWorkflow OK
|
|
1221
|
+
* @throws ApiError
|
|
1222
|
+
*/
|
|
1043
1223
|
searchV21(start, size = 100, sort, freeText = "*", query) {
|
|
1044
1224
|
return this.httpRequest.request({
|
|
1045
1225
|
method: "GET",
|
|
@@ -1053,6 +1233,12 @@ var WorkflowResourceService = class {
|
|
|
1053
1233
|
}
|
|
1054
1234
|
});
|
|
1055
1235
|
}
|
|
1236
|
+
/**
|
|
1237
|
+
* Pauses the workflow
|
|
1238
|
+
* @param workflowId
|
|
1239
|
+
* @returns any OK
|
|
1240
|
+
* @throws ApiError
|
|
1241
|
+
*/
|
|
1056
1242
|
pauseWorkflow(workflowId) {
|
|
1057
1243
|
return this.httpRequest.request({
|
|
1058
1244
|
method: "PUT",
|
|
@@ -1062,6 +1248,14 @@ var WorkflowResourceService = class {
|
|
|
1062
1248
|
}
|
|
1063
1249
|
});
|
|
1064
1250
|
}
|
|
1251
|
+
/**
|
|
1252
|
+
* Skips a given task from a current running workflow
|
|
1253
|
+
* @param workflowId
|
|
1254
|
+
* @param taskReferenceName
|
|
1255
|
+
* @param requestBody
|
|
1256
|
+
* @returns any OK
|
|
1257
|
+
* @throws ApiError
|
|
1258
|
+
*/
|
|
1065
1259
|
skipTaskFromWorkflow(workflowId, taskReferenceName, requestBody) {
|
|
1066
1260
|
return this.httpRequest.request({
|
|
1067
1261
|
method: "PUT",
|
|
@@ -1074,6 +1268,15 @@ var WorkflowResourceService = class {
|
|
|
1074
1268
|
mediaType: "application/json"
|
|
1075
1269
|
});
|
|
1076
1270
|
}
|
|
1271
|
+
/**
|
|
1272
|
+
* Lists workflows for the given correlation id list
|
|
1273
|
+
* @param name
|
|
1274
|
+
* @param requestBody
|
|
1275
|
+
* @param includeClosed
|
|
1276
|
+
* @param includeTasks
|
|
1277
|
+
* @returns Workflow OK
|
|
1278
|
+
* @throws ApiError
|
|
1279
|
+
*/
|
|
1077
1280
|
getWorkflows(name, requestBody, includeClosed = false, includeTasks = false) {
|
|
1078
1281
|
return this.httpRequest.request({
|
|
1079
1282
|
method: "POST",
|
|
@@ -1089,6 +1292,14 @@ var WorkflowResourceService = class {
|
|
|
1089
1292
|
mediaType: "application/json"
|
|
1090
1293
|
});
|
|
1091
1294
|
}
|
|
1295
|
+
/**
|
|
1296
|
+
* Gets the workflow by workflow id
|
|
1297
|
+
* @param workflowId
|
|
1298
|
+
* @param includeOutput
|
|
1299
|
+
* @param includeVariables
|
|
1300
|
+
* @returns WorkflowStatus OK
|
|
1301
|
+
* @throws ApiError
|
|
1302
|
+
*/
|
|
1092
1303
|
getWorkflowStatusSummary(workflowId, includeOutput = false, includeVariables = false) {
|
|
1093
1304
|
return this.httpRequest.request({
|
|
1094
1305
|
method: "GET",
|
|
@@ -1102,6 +1313,15 @@ var WorkflowResourceService = class {
|
|
|
1102
1313
|
}
|
|
1103
1314
|
});
|
|
1104
1315
|
}
|
|
1316
|
+
/**
|
|
1317
|
+
* Lists workflows for the given correlation id
|
|
1318
|
+
* @param name
|
|
1319
|
+
* @param correlationId
|
|
1320
|
+
* @param includeClosed
|
|
1321
|
+
* @param includeTasks
|
|
1322
|
+
* @returns Workflow OK
|
|
1323
|
+
* @throws ApiError
|
|
1324
|
+
*/
|
|
1105
1325
|
getWorkflows1(name, correlationId, includeClosed = false, includeTasks = false) {
|
|
1106
1326
|
return this.httpRequest.request({
|
|
1107
1327
|
method: "GET",
|
|
@@ -1116,6 +1336,13 @@ var WorkflowResourceService = class {
|
|
|
1116
1336
|
}
|
|
1117
1337
|
});
|
|
1118
1338
|
}
|
|
1339
|
+
/**
|
|
1340
|
+
* Retries the last failed task
|
|
1341
|
+
* @param workflowId
|
|
1342
|
+
* @param resumeSubworkflowTasks
|
|
1343
|
+
* @returns void
|
|
1344
|
+
* @throws ApiError
|
|
1345
|
+
*/
|
|
1119
1346
|
retry1(workflowId, resumeSubworkflowTasks = false) {
|
|
1120
1347
|
return this.httpRequest.request({
|
|
1121
1348
|
method: "POST",
|
|
@@ -1128,6 +1355,13 @@ var WorkflowResourceService = class {
|
|
|
1128
1355
|
}
|
|
1129
1356
|
});
|
|
1130
1357
|
}
|
|
1358
|
+
/**
|
|
1359
|
+
* Gets the workflow by workflow id
|
|
1360
|
+
* @param workflowId
|
|
1361
|
+
* @param includeTasks
|
|
1362
|
+
* @returns Workflow OK
|
|
1363
|
+
* @throws ApiError
|
|
1364
|
+
*/
|
|
1131
1365
|
getExecutionStatus(workflowId, includeTasks = true) {
|
|
1132
1366
|
return this.httpRequest.request({
|
|
1133
1367
|
method: "GET",
|
|
@@ -1140,6 +1374,13 @@ var WorkflowResourceService = class {
|
|
|
1140
1374
|
}
|
|
1141
1375
|
});
|
|
1142
1376
|
}
|
|
1377
|
+
/**
|
|
1378
|
+
* Terminate workflow execution
|
|
1379
|
+
* @param workflowId
|
|
1380
|
+
* @param reason
|
|
1381
|
+
* @returns any OK
|
|
1382
|
+
* @throws ApiError
|
|
1383
|
+
*/
|
|
1143
1384
|
terminate1(workflowId, reason) {
|
|
1144
1385
|
return this.httpRequest.request({
|
|
1145
1386
|
method: "DELETE",
|
|
@@ -1152,6 +1393,12 @@ var WorkflowResourceService = class {
|
|
|
1152
1393
|
}
|
|
1153
1394
|
});
|
|
1154
1395
|
}
|
|
1396
|
+
/**
|
|
1397
|
+
* Resumes the workflow
|
|
1398
|
+
* @param workflowId
|
|
1399
|
+
* @returns any OK
|
|
1400
|
+
* @throws ApiError
|
|
1401
|
+
*/
|
|
1155
1402
|
resumeWorkflow(workflowId) {
|
|
1156
1403
|
return this.httpRequest.request({
|
|
1157
1404
|
method: "PUT",
|
|
@@ -1161,6 +1408,13 @@ var WorkflowResourceService = class {
|
|
|
1161
1408
|
}
|
|
1162
1409
|
});
|
|
1163
1410
|
}
|
|
1411
|
+
/**
|
|
1412
|
+
* Removes the workflow from the system
|
|
1413
|
+
* @param workflowId
|
|
1414
|
+
* @param archiveWorkflow
|
|
1415
|
+
* @returns any OK
|
|
1416
|
+
* @throws ApiError
|
|
1417
|
+
*/
|
|
1164
1418
|
delete(workflowId, archiveWorkflow = true) {
|
|
1165
1419
|
return this.httpRequest.request({
|
|
1166
1420
|
method: "DELETE",
|
|
@@ -1173,6 +1427,17 @@ var WorkflowResourceService = class {
|
|
|
1173
1427
|
}
|
|
1174
1428
|
});
|
|
1175
1429
|
}
|
|
1430
|
+
/**
|
|
1431
|
+
* Search for workflows based on task parameters
|
|
1432
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC
|
|
1433
|
+
* @param start
|
|
1434
|
+
* @param size
|
|
1435
|
+
* @param sort
|
|
1436
|
+
* @param freeText
|
|
1437
|
+
* @param query
|
|
1438
|
+
* @returns SearchResultWorkflowSummary OK
|
|
1439
|
+
* @throws ApiError
|
|
1440
|
+
*/
|
|
1176
1441
|
searchWorkflowsByTasks(start, size = 100, sort, freeText = "*", query) {
|
|
1177
1442
|
return this.httpRequest.request({
|
|
1178
1443
|
method: "GET",
|
|
@@ -1186,6 +1451,14 @@ var WorkflowResourceService = class {
|
|
|
1186
1451
|
}
|
|
1187
1452
|
});
|
|
1188
1453
|
}
|
|
1454
|
+
/**
|
|
1455
|
+
* Get the uri and path of the external storage where the workflow payload is to be stored
|
|
1456
|
+
* @param path
|
|
1457
|
+
* @param operation
|
|
1458
|
+
* @param payloadType
|
|
1459
|
+
* @returns ExternalStorageLocation OK
|
|
1460
|
+
* @throws ApiError
|
|
1461
|
+
*/
|
|
1189
1462
|
getExternalStorageLocation(path, operation, payloadType) {
|
|
1190
1463
|
return this.httpRequest.request({
|
|
1191
1464
|
method: "GET",
|
|
@@ -1197,6 +1470,16 @@ var WorkflowResourceService = class {
|
|
|
1197
1470
|
}
|
|
1198
1471
|
});
|
|
1199
1472
|
}
|
|
1473
|
+
/**
|
|
1474
|
+
* Start a new workflow. Returns the ID of the workflow instance that can be later used for tracking
|
|
1475
|
+
* @param name
|
|
1476
|
+
* @param requestBody
|
|
1477
|
+
* @param version
|
|
1478
|
+
* @param correlationId
|
|
1479
|
+
* @param priority
|
|
1480
|
+
* @returns string OK
|
|
1481
|
+
* @throws ApiError
|
|
1482
|
+
*/
|
|
1200
1483
|
startWorkflow1(name, requestBody, version, correlationId, priority) {
|
|
1201
1484
|
return this.httpRequest.request({
|
|
1202
1485
|
method: "POST",
|
|
@@ -1213,6 +1496,13 @@ var WorkflowResourceService = class {
|
|
|
1213
1496
|
mediaType: "application/json"
|
|
1214
1497
|
});
|
|
1215
1498
|
}
|
|
1499
|
+
/**
|
|
1500
|
+
* Restarts a completed workflow
|
|
1501
|
+
* @param workflowId
|
|
1502
|
+
* @param useLatestDefinitions
|
|
1503
|
+
* @returns void
|
|
1504
|
+
* @throws ApiError
|
|
1505
|
+
*/
|
|
1216
1506
|
restart1(workflowId, useLatestDefinitions = false) {
|
|
1217
1507
|
return this.httpRequest.request({
|
|
1218
1508
|
method: "POST",
|
|
@@ -1225,6 +1515,19 @@ var WorkflowResourceService = class {
|
|
|
1225
1515
|
}
|
|
1226
1516
|
});
|
|
1227
1517
|
}
|
|
1518
|
+
/**
|
|
1519
|
+
* Search for workflows based on payload and other parameters
|
|
1520
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC.
|
|
1521
|
+
* @param queryId
|
|
1522
|
+
* @param start
|
|
1523
|
+
* @param size
|
|
1524
|
+
* @param sort
|
|
1525
|
+
* @param freeText
|
|
1526
|
+
* @param query
|
|
1527
|
+
* @param skipCache
|
|
1528
|
+
* @returns ScrollableSearchResultWorkflowSummary OK
|
|
1529
|
+
* @throws ApiError
|
|
1530
|
+
*/
|
|
1228
1531
|
search1(queryId, start, size = 100, sort, freeText = "*", query, skipCache = false) {
|
|
1229
1532
|
return this.httpRequest.request({
|
|
1230
1533
|
method: "GET",
|
|
@@ -1240,6 +1543,17 @@ var WorkflowResourceService = class {
|
|
|
1240
1543
|
}
|
|
1241
1544
|
});
|
|
1242
1545
|
}
|
|
1546
|
+
/**
|
|
1547
|
+
* Search for workflows based on task parameters
|
|
1548
|
+
* use sort options as sort=<field>:ASC|DESC e.g. sort=name&sort=workflowId:DESC. If order is not specified, defaults to ASC
|
|
1549
|
+
* @param start
|
|
1550
|
+
* @param size
|
|
1551
|
+
* @param sort
|
|
1552
|
+
* @param freeText
|
|
1553
|
+
* @param query
|
|
1554
|
+
* @returns SearchResultWorkflow OK
|
|
1555
|
+
* @throws ApiError
|
|
1556
|
+
*/
|
|
1243
1557
|
searchWorkflowsByTasksV2(start, size = 100, sort, freeText = "*", query) {
|
|
1244
1558
|
return this.httpRequest.request({
|
|
1245
1559
|
method: "GET",
|
|
@@ -1253,6 +1567,12 @@ var WorkflowResourceService = class {
|
|
|
1253
1567
|
}
|
|
1254
1568
|
});
|
|
1255
1569
|
}
|
|
1570
|
+
/**
|
|
1571
|
+
* Resets callback times of all non-terminal SIMPLE tasks to 0
|
|
1572
|
+
* @param workflowId
|
|
1573
|
+
* @returns void
|
|
1574
|
+
* @throws ApiError
|
|
1575
|
+
*/
|
|
1256
1576
|
resetWorkflow(workflowId) {
|
|
1257
1577
|
return this.httpRequest.request({
|
|
1258
1578
|
method: "POST",
|
|
@@ -1266,14 +1586,100 @@ var WorkflowResourceService = class {
|
|
|
1266
1586
|
|
|
1267
1587
|
// src/common/open-api/core/ApiError.ts
|
|
1268
1588
|
var ApiError = class extends Error {
|
|
1269
|
-
constructor(
|
|
1589
|
+
constructor(request3, response, message) {
|
|
1270
1590
|
super(message);
|
|
1271
1591
|
this.name = "ApiError";
|
|
1272
1592
|
this.url = response.url;
|
|
1273
1593
|
this.status = response.status;
|
|
1274
1594
|
this.statusText = response.statusText;
|
|
1275
1595
|
this.body = response.body;
|
|
1276
|
-
this.request =
|
|
1596
|
+
this.request = request3;
|
|
1597
|
+
}
|
|
1598
|
+
};
|
|
1599
|
+
|
|
1600
|
+
// src/common/open-api/core/CancelablePromise.ts
|
|
1601
|
+
var CancelError = class extends Error {
|
|
1602
|
+
constructor(message) {
|
|
1603
|
+
super(message);
|
|
1604
|
+
this.name = "CancelError";
|
|
1605
|
+
}
|
|
1606
|
+
get isCancelled() {
|
|
1607
|
+
return true;
|
|
1608
|
+
}
|
|
1609
|
+
};
|
|
1610
|
+
var CancelablePromise = class {
|
|
1611
|
+
static {
|
|
1612
|
+
Symbol.toStringTag;
|
|
1613
|
+
}
|
|
1614
|
+
constructor(executor) {
|
|
1615
|
+
this._isResolved = false;
|
|
1616
|
+
this._isRejected = false;
|
|
1617
|
+
this._isCancelled = false;
|
|
1618
|
+
this._cancelHandlers = [];
|
|
1619
|
+
this._promise = new Promise((resolve3, reject) => {
|
|
1620
|
+
this._resolve = resolve3;
|
|
1621
|
+
this._reject = reject;
|
|
1622
|
+
const onResolve = (value) => {
|
|
1623
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
1624
|
+
return;
|
|
1625
|
+
}
|
|
1626
|
+
this._isResolved = true;
|
|
1627
|
+
this._resolve?.(value);
|
|
1628
|
+
};
|
|
1629
|
+
const onReject = (reason) => {
|
|
1630
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
1631
|
+
return;
|
|
1632
|
+
}
|
|
1633
|
+
this._isRejected = true;
|
|
1634
|
+
this._reject?.(reason);
|
|
1635
|
+
};
|
|
1636
|
+
const onCancel = (cancelHandler) => {
|
|
1637
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
1638
|
+
return;
|
|
1639
|
+
}
|
|
1640
|
+
this._cancelHandlers.push(cancelHandler);
|
|
1641
|
+
};
|
|
1642
|
+
Object.defineProperty(onCancel, "isResolved", {
|
|
1643
|
+
get: () => this._isResolved
|
|
1644
|
+
});
|
|
1645
|
+
Object.defineProperty(onCancel, "isRejected", {
|
|
1646
|
+
get: () => this._isRejected
|
|
1647
|
+
});
|
|
1648
|
+
Object.defineProperty(onCancel, "isCancelled", {
|
|
1649
|
+
get: () => this._isCancelled
|
|
1650
|
+
});
|
|
1651
|
+
return executor(onResolve, onReject, onCancel);
|
|
1652
|
+
});
|
|
1653
|
+
}
|
|
1654
|
+
then(onFulfilled, onRejected) {
|
|
1655
|
+
return this._promise.then(onFulfilled, onRejected);
|
|
1656
|
+
}
|
|
1657
|
+
catch(onRejected) {
|
|
1658
|
+
return this._promise.catch(onRejected);
|
|
1659
|
+
}
|
|
1660
|
+
finally(onFinally) {
|
|
1661
|
+
return this._promise.finally(onFinally);
|
|
1662
|
+
}
|
|
1663
|
+
cancel() {
|
|
1664
|
+
if (this._isResolved || this._isRejected || this._isCancelled) {
|
|
1665
|
+
return;
|
|
1666
|
+
}
|
|
1667
|
+
this._isCancelled = true;
|
|
1668
|
+
if (this._cancelHandlers.length) {
|
|
1669
|
+
try {
|
|
1670
|
+
for (const cancelHandler of this._cancelHandlers) {
|
|
1671
|
+
cancelHandler();
|
|
1672
|
+
}
|
|
1673
|
+
} catch (error) {
|
|
1674
|
+
console.warn("Cancellation threw an error", error);
|
|
1675
|
+
return;
|
|
1676
|
+
}
|
|
1677
|
+
}
|
|
1678
|
+
this._cancelHandlers.length = 0;
|
|
1679
|
+
this._reject?.(new CancelError("Request aborted"));
|
|
1680
|
+
}
|
|
1681
|
+
get isCancelled() {
|
|
1682
|
+
return this._isCancelled;
|
|
1277
1683
|
}
|
|
1278
1684
|
};
|
|
1279
1685
|
|
|
@@ -1374,11 +1780,17 @@ var getHeaders = async (config, options) => {
|
|
|
1374
1780
|
const username = await resolve(options, config.USERNAME);
|
|
1375
1781
|
const password = await resolve(options, config.PASSWORD);
|
|
1376
1782
|
const additionalHeaders = await resolve(options, config.HEADERS);
|
|
1377
|
-
const headers = Object.entries(
|
|
1378
|
-
Accept: "application/json"
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
}),
|
|
1783
|
+
const headers = Object.entries({
|
|
1784
|
+
Accept: "application/json",
|
|
1785
|
+
...additionalHeaders,
|
|
1786
|
+
...options.headers
|
|
1787
|
+
}).filter(([_, value]) => isDefined(value)).reduce(
|
|
1788
|
+
(headers2, [key, value]) => ({
|
|
1789
|
+
...headers2,
|
|
1790
|
+
[key]: String(value)
|
|
1791
|
+
}),
|
|
1792
|
+
{}
|
|
1793
|
+
);
|
|
1382
1794
|
if (isStringWithValue(token)) {
|
|
1383
1795
|
headers["X-AUTHORIZATION"] = token;
|
|
1384
1796
|
}
|
|
@@ -1413,14 +1825,14 @@ var getRequestBody = (options) => {
|
|
|
1413
1825
|
};
|
|
1414
1826
|
var sendRequest = async (options, url, body, formData, headers, onCancel) => {
|
|
1415
1827
|
const controller = new AbortController();
|
|
1416
|
-
const
|
|
1828
|
+
const request3 = {
|
|
1417
1829
|
headers,
|
|
1418
1830
|
method: options.method,
|
|
1419
1831
|
body: body ?? formData,
|
|
1420
1832
|
signal: controller.signal
|
|
1421
1833
|
};
|
|
1422
1834
|
onCancel(() => controller.abort());
|
|
1423
|
-
return await fetch(url,
|
|
1835
|
+
return await fetch(url, request3);
|
|
1424
1836
|
};
|
|
1425
1837
|
var getResponseHeader = (response, responseHeader) => {
|
|
1426
1838
|
if (responseHeader) {
|
|
@@ -1450,15 +1862,16 @@ var getResponseBody = async (response) => {
|
|
|
1450
1862
|
return void 0;
|
|
1451
1863
|
};
|
|
1452
1864
|
var catchErrorCodes = (options, result) => {
|
|
1453
|
-
const errors =
|
|
1865
|
+
const errors = {
|
|
1454
1866
|
400: "Bad Request",
|
|
1455
1867
|
401: "Unauthorized",
|
|
1456
1868
|
403: "Forbidden",
|
|
1457
1869
|
404: "Not Found",
|
|
1458
1870
|
500: "Internal Server Error",
|
|
1459
1871
|
502: "Bad Gateway",
|
|
1460
|
-
503: "Service Unavailable"
|
|
1461
|
-
|
|
1872
|
+
503: "Service Unavailable",
|
|
1873
|
+
...options.errors
|
|
1874
|
+
};
|
|
1462
1875
|
const error = errors[result.status];
|
|
1463
1876
|
if (error) {
|
|
1464
1877
|
throw new ApiError(options, result, error);
|
|
@@ -1468,16 +1881,26 @@ var catchErrorCodes = (options, result) => {
|
|
|
1468
1881
|
}
|
|
1469
1882
|
};
|
|
1470
1883
|
var request = (config, options) => {
|
|
1471
|
-
return new CancelablePromise(async (
|
|
1884
|
+
return new CancelablePromise(async (resolve3, reject, onCancel) => {
|
|
1472
1885
|
try {
|
|
1473
1886
|
const url = getUrl(config, options);
|
|
1474
1887
|
const formData = getFormData(options);
|
|
1475
1888
|
const body = getRequestBody(options);
|
|
1476
1889
|
const headers = await getHeaders(config, options);
|
|
1477
1890
|
if (!onCancel.isCancelled) {
|
|
1478
|
-
const response = await sendRequest(
|
|
1891
|
+
const response = await sendRequest(
|
|
1892
|
+
options,
|
|
1893
|
+
url,
|
|
1894
|
+
body,
|
|
1895
|
+
formData,
|
|
1896
|
+
headers,
|
|
1897
|
+
onCancel
|
|
1898
|
+
);
|
|
1479
1899
|
const responseBody = await getResponseBody(response);
|
|
1480
|
-
const responseHeader = getResponseHeader(
|
|
1900
|
+
const responseHeader = getResponseHeader(
|
|
1901
|
+
response,
|
|
1902
|
+
options.responseHeader
|
|
1903
|
+
);
|
|
1481
1904
|
const result = {
|
|
1482
1905
|
url,
|
|
1483
1906
|
ok: response.ok,
|
|
@@ -1486,7 +1909,7 @@ var request = (config, options) => {
|
|
|
1486
1909
|
body: responseHeader ?? responseBody
|
|
1487
1910
|
};
|
|
1488
1911
|
catchErrorCodes(options, result);
|
|
1489
|
-
|
|
1912
|
+
resolve3(result.body);
|
|
1490
1913
|
}
|
|
1491
1914
|
} catch (error) {
|
|
1492
1915
|
reject(error);
|
|
@@ -1499,6 +1922,18 @@ var HumanTaskService = class {
|
|
|
1499
1922
|
constructor(httpRequest) {
|
|
1500
1923
|
this.httpRequest = httpRequest;
|
|
1501
1924
|
}
|
|
1925
|
+
/**
|
|
1926
|
+
* List tasks by filters - task name, state, assignee, assignee type, claimed
|
|
1927
|
+
* @param state
|
|
1928
|
+
* @param assignee
|
|
1929
|
+
* @param assigneeType
|
|
1930
|
+
* @param claimedBy
|
|
1931
|
+
* @param taskName
|
|
1932
|
+
* @param freeText
|
|
1933
|
+
* @param includeInputOutput
|
|
1934
|
+
* @returns SearchResultHumanTaskEntry OK
|
|
1935
|
+
* @throws ApiError
|
|
1936
|
+
*/
|
|
1502
1937
|
getTasksByFilter(state, assignee, assigneeType, claimedBy, taskName, freeText, includeInputOutput = false) {
|
|
1503
1938
|
return this.httpRequest.request({
|
|
1504
1939
|
method: "GET",
|
|
@@ -1514,12 +1949,29 @@ var HumanTaskService = class {
|
|
|
1514
1949
|
}
|
|
1515
1950
|
});
|
|
1516
1951
|
}
|
|
1952
|
+
/**
|
|
1953
|
+
* Get task load grouped by workflow name and task ref name per user
|
|
1954
|
+
* @returns HumanTaskLoad OK
|
|
1955
|
+
* @throws ApiError
|
|
1956
|
+
*/
|
|
1517
1957
|
getTaskLoad() {
|
|
1518
1958
|
return this.httpRequest.request({
|
|
1519
1959
|
method: "GET",
|
|
1520
1960
|
url: "/human/tasks/load"
|
|
1521
1961
|
});
|
|
1522
1962
|
}
|
|
1963
|
+
/**
|
|
1964
|
+
* Search human tasks
|
|
1965
|
+
* @param queryId
|
|
1966
|
+
* @param start
|
|
1967
|
+
* @param size
|
|
1968
|
+
* @param freeText
|
|
1969
|
+
* @param query
|
|
1970
|
+
* @param jsonQuery
|
|
1971
|
+
* @param includeInputOutput
|
|
1972
|
+
* @returns HTScrollableSearchResultHumanTaskEntry OK
|
|
1973
|
+
* @throws ApiError
|
|
1974
|
+
*/
|
|
1523
1975
|
search1(queryId, start, size = 100, freeText = "*", query, jsonQuery, includeInputOutput = false) {
|
|
1524
1976
|
return this.httpRequest.request({
|
|
1525
1977
|
method: "GET",
|
|
@@ -1535,6 +1987,12 @@ var HumanTaskService = class {
|
|
|
1535
1987
|
}
|
|
1536
1988
|
});
|
|
1537
1989
|
}
|
|
1990
|
+
/**
|
|
1991
|
+
* If the workflow is disconnected from tasks, this API can be used to clean up
|
|
1992
|
+
* @param taskId
|
|
1993
|
+
* @returns any OK
|
|
1994
|
+
* @throws ApiError
|
|
1995
|
+
*/
|
|
1538
1996
|
updateTaskOutput1(taskId) {
|
|
1539
1997
|
return this.httpRequest.request({
|
|
1540
1998
|
method: "DELETE",
|
|
@@ -1544,6 +2002,12 @@ var HumanTaskService = class {
|
|
|
1544
2002
|
}
|
|
1545
2003
|
});
|
|
1546
2004
|
}
|
|
2005
|
+
/**
|
|
2006
|
+
* Get a task
|
|
2007
|
+
* @param taskId
|
|
2008
|
+
* @returns HumanTaskEntry OK
|
|
2009
|
+
* @throws ApiError
|
|
2010
|
+
*/
|
|
1547
2011
|
getTask1(taskId) {
|
|
1548
2012
|
return this.httpRequest.request({
|
|
1549
2013
|
method: "GET",
|
|
@@ -1553,6 +2017,12 @@ var HumanTaskService = class {
|
|
|
1553
2017
|
}
|
|
1554
2018
|
});
|
|
1555
2019
|
}
|
|
2020
|
+
/**
|
|
2021
|
+
* Get human task action log entries by task id
|
|
2022
|
+
* @param taskId
|
|
2023
|
+
* @returns HumanTaskActionLogEntry OK
|
|
2024
|
+
* @throws ApiError
|
|
2025
|
+
*/
|
|
1556
2026
|
getActionLogs(taskId) {
|
|
1557
2027
|
return this.httpRequest.request({
|
|
1558
2028
|
method: "GET",
|
|
@@ -1562,6 +2032,12 @@ var HumanTaskService = class {
|
|
|
1562
2032
|
}
|
|
1563
2033
|
});
|
|
1564
2034
|
}
|
|
2035
|
+
/**
|
|
2036
|
+
* Claim a task by authenticated Conductor user
|
|
2037
|
+
* @param taskId
|
|
2038
|
+
* @returns any OK
|
|
2039
|
+
* @throws ApiError
|
|
2040
|
+
*/
|
|
1565
2041
|
claimTask(taskId) {
|
|
1566
2042
|
return this.httpRequest.request({
|
|
1567
2043
|
method: "POST",
|
|
@@ -1571,6 +2047,13 @@ var HumanTaskService = class {
|
|
|
1571
2047
|
}
|
|
1572
2048
|
});
|
|
1573
2049
|
}
|
|
2050
|
+
/**
|
|
2051
|
+
* Claim a task to an external user
|
|
2052
|
+
* @param taskId
|
|
2053
|
+
* @param userId
|
|
2054
|
+
* @returns any OK
|
|
2055
|
+
* @throws ApiError
|
|
2056
|
+
*/
|
|
1574
2057
|
assignAndClaim(taskId, userId) {
|
|
1575
2058
|
return this.httpRequest.request({
|
|
1576
2059
|
method: "POST",
|
|
@@ -1581,6 +2064,13 @@ var HumanTaskService = class {
|
|
|
1581
2064
|
}
|
|
1582
2065
|
});
|
|
1583
2066
|
}
|
|
2067
|
+
/**
|
|
2068
|
+
* Release a task without completing it
|
|
2069
|
+
* @param taskId
|
|
2070
|
+
* @param requestBody
|
|
2071
|
+
* @returns any OK
|
|
2072
|
+
* @throws ApiError
|
|
2073
|
+
*/
|
|
1584
2074
|
reassignTask(taskId, requestBody) {
|
|
1585
2075
|
return this.httpRequest.request({
|
|
1586
2076
|
method: "POST",
|
|
@@ -1592,6 +2082,12 @@ var HumanTaskService = class {
|
|
|
1592
2082
|
mediaType: "application/json"
|
|
1593
2083
|
});
|
|
1594
2084
|
}
|
|
2085
|
+
/**
|
|
2086
|
+
* Release a task without completing it
|
|
2087
|
+
* @param taskId
|
|
2088
|
+
* @returns any OK
|
|
2089
|
+
* @throws ApiError
|
|
2090
|
+
*/
|
|
1595
2091
|
releaseTask(taskId) {
|
|
1596
2092
|
return this.httpRequest.request({
|
|
1597
2093
|
method: "POST",
|
|
@@ -1601,6 +2097,12 @@ var HumanTaskService = class {
|
|
|
1601
2097
|
}
|
|
1602
2098
|
});
|
|
1603
2099
|
}
|
|
2100
|
+
/**
|
|
2101
|
+
* Get human task state log entries by task id
|
|
2102
|
+
* @param taskId
|
|
2103
|
+
* @returns HumanTaskStateLogEntry OK
|
|
2104
|
+
* @throws ApiError
|
|
2105
|
+
*/
|
|
1604
2106
|
getStateLogs(taskId) {
|
|
1605
2107
|
return this.httpRequest.request({
|
|
1606
2108
|
method: "GET",
|
|
@@ -1610,6 +2112,14 @@ var HumanTaskService = class {
|
|
|
1610
2112
|
}
|
|
1611
2113
|
});
|
|
1612
2114
|
}
|
|
2115
|
+
/**
|
|
2116
|
+
* Update task output, optionally complete
|
|
2117
|
+
* @param taskId
|
|
2118
|
+
* @param requestBody
|
|
2119
|
+
* @param complete
|
|
2120
|
+
* @returns any OK
|
|
2121
|
+
* @throws ApiError
|
|
2122
|
+
*/
|
|
1613
2123
|
updateTaskOutput(taskId, requestBody, complete = false) {
|
|
1614
2124
|
return this.httpRequest.request({
|
|
1615
2125
|
method: "POST",
|
|
@@ -1624,6 +2134,12 @@ var HumanTaskService = class {
|
|
|
1624
2134
|
mediaType: "application/json"
|
|
1625
2135
|
});
|
|
1626
2136
|
}
|
|
2137
|
+
/**
|
|
2138
|
+
* Delete human task templates by name
|
|
2139
|
+
* @param name
|
|
2140
|
+
* @returns any OK
|
|
2141
|
+
* @throws ApiError
|
|
2142
|
+
*/
|
|
1627
2143
|
deleteTemplatesByName(name) {
|
|
1628
2144
|
return this.httpRequest.request({
|
|
1629
2145
|
method: "DELETE",
|
|
@@ -1633,6 +2149,13 @@ var HumanTaskService = class {
|
|
|
1633
2149
|
}
|
|
1634
2150
|
});
|
|
1635
2151
|
}
|
|
2152
|
+
/**
|
|
2153
|
+
* List all human task templates or get templates by name, or a template by name and version
|
|
2154
|
+
* @param name
|
|
2155
|
+
* @param version
|
|
2156
|
+
* @returns HumanTaskTemplateEntry OK
|
|
2157
|
+
* @throws ApiError
|
|
2158
|
+
*/
|
|
1636
2159
|
getAllTemplates(name, version) {
|
|
1637
2160
|
return this.httpRequest.request({
|
|
1638
2161
|
method: "GET",
|
|
@@ -1643,6 +2166,13 @@ var HumanTaskService = class {
|
|
|
1643
2166
|
}
|
|
1644
2167
|
});
|
|
1645
2168
|
}
|
|
2169
|
+
/**
|
|
2170
|
+
* Save human task template
|
|
2171
|
+
* @param requestBody
|
|
2172
|
+
* @param newVersion
|
|
2173
|
+
* @returns string OK
|
|
2174
|
+
* @throws ApiError
|
|
2175
|
+
*/
|
|
1646
2176
|
saveTemplate(requestBody, newVersion = false) {
|
|
1647
2177
|
return this.httpRequest.request({
|
|
1648
2178
|
method: "POST",
|
|
@@ -1654,6 +2184,12 @@ var HumanTaskService = class {
|
|
|
1654
2184
|
mediaType: "application/json"
|
|
1655
2185
|
});
|
|
1656
2186
|
}
|
|
2187
|
+
/**
|
|
2188
|
+
* Delete human task template
|
|
2189
|
+
* @param id
|
|
2190
|
+
* @returns any OK
|
|
2191
|
+
* @throws ApiError
|
|
2192
|
+
*/
|
|
1657
2193
|
deleteTemplateById(id) {
|
|
1658
2194
|
return this.httpRequest.request({
|
|
1659
2195
|
method: "DELETE",
|
|
@@ -1663,6 +2199,12 @@ var HumanTaskService = class {
|
|
|
1663
2199
|
}
|
|
1664
2200
|
});
|
|
1665
2201
|
}
|
|
2202
|
+
/**
|
|
2203
|
+
* Get human task template by id
|
|
2204
|
+
* @param id
|
|
2205
|
+
* @returns HumanTaskTemplateEntry OK
|
|
2206
|
+
* @throws ApiError
|
|
2207
|
+
*/
|
|
1666
2208
|
getTemplateById(id) {
|
|
1667
2209
|
return this.httpRequest.request({
|
|
1668
2210
|
method: "GET",
|
|
@@ -1679,6 +2221,12 @@ var HumanTaskResourceService = class {
|
|
|
1679
2221
|
constructor(httpRequest) {
|
|
1680
2222
|
this.httpRequest = httpRequest;
|
|
1681
2223
|
}
|
|
2224
|
+
/**
|
|
2225
|
+
* Get Conductor task by id (for human tasks only)
|
|
2226
|
+
* @param taskId
|
|
2227
|
+
* @returns Task OK
|
|
2228
|
+
* @throws ApiError
|
|
2229
|
+
*/
|
|
1682
2230
|
getConductorTaskById(taskId) {
|
|
1683
2231
|
return this.httpRequest.request({
|
|
1684
2232
|
method: "GET",
|
|
@@ -1691,7 +2239,7 @@ var HumanTaskResourceService = class {
|
|
|
1691
2239
|
};
|
|
1692
2240
|
|
|
1693
2241
|
// src/common/open-api/ConductorClient.ts
|
|
1694
|
-
var defaultRequestHandler = (
|
|
2242
|
+
var defaultRequestHandler = (request3, config, options) => request3(config, options);
|
|
1695
2243
|
var ConductorClient = class {
|
|
1696
2244
|
constructor(config, requestHandler = defaultRequestHandler) {
|
|
1697
2245
|
const resolvedConfig = {
|
|
@@ -1725,132 +2273,843 @@ var ConductorClient = class {
|
|
|
1725
2273
|
}
|
|
1726
2274
|
};
|
|
1727
2275
|
|
|
1728
|
-
// src/common/
|
|
1729
|
-
var
|
|
1730
|
-
|
|
1731
|
-
|
|
1732
|
-
const { serverUrl, keyId, keySecret } = config;
|
|
1733
|
-
const tokenUrl = `${serverUrl}/token`;
|
|
1734
|
-
const res = await fetch(tokenUrl, {
|
|
1735
|
-
headers: {
|
|
1736
|
-
"Content-Type": "application/json",
|
|
1737
|
-
Accept: "application/json"
|
|
1738
|
-
},
|
|
1739
|
-
body: JSON.stringify({ keyId, keySecret }),
|
|
1740
|
-
method: "POST"
|
|
1741
|
-
});
|
|
1742
|
-
const { token } = await res.json();
|
|
1743
|
-
return new ConductorClient(__spreadProps(__spreadValues({}, config), { TOKEN: token }), requestHandler);
|
|
1744
|
-
} else {
|
|
1745
|
-
return Promise.resolve(new ConductorClient(config, requestHandler));
|
|
2276
|
+
// src/common/open-api/core/BaseHttpRequest.ts
|
|
2277
|
+
var BaseHttpRequest = class {
|
|
2278
|
+
constructor(config) {
|
|
2279
|
+
this.config = config;
|
|
1746
2280
|
}
|
|
1747
2281
|
};
|
|
1748
2282
|
|
|
1749
|
-
// src/
|
|
1750
|
-
var
|
|
1751
|
-
|
|
1752
|
-
|
|
1753
|
-
|
|
1754
|
-
|
|
1755
|
-
|
|
1756
|
-
|
|
1757
|
-
|
|
1758
|
-
|
|
1759
|
-
|
|
1760
|
-
|
|
1761
|
-
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
|
|
1768
|
-
|
|
1769
|
-
|
|
1770
|
-
|
|
1771
|
-
|
|
1772
|
-
|
|
1773
|
-
|
|
1774
|
-
|
|
1775
|
-
|
|
1776
|
-
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1782
|
-
|
|
1783
|
-
|
|
1784
|
-
|
|
1785
|
-
|
|
1786
|
-
|
|
1787
|
-
|
|
1788
|
-
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
|
-
|
|
1792
|
-
|
|
1793
|
-
|
|
1794
|
-
|
|
1795
|
-
|
|
1796
|
-
|
|
1797
|
-
|
|
1798
|
-
|
|
1799
|
-
|
|
1800
|
-
|
|
1801
|
-
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1807
|
-
|
|
1808
|
-
}
|
|
1809
|
-
|
|
1810
|
-
|
|
1811
|
-
}
|
|
1812
|
-
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
|
|
1818
|
-
|
|
1819
|
-
|
|
1820
|
-
|
|
1821
|
-
|
|
1822
|
-
|
|
1823
|
-
|
|
1824
|
-
|
|
1825
|
-
|
|
1826
|
-
|
|
1827
|
-
}
|
|
1828
|
-
|
|
1829
|
-
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
type: "JOIN" /* JOIN */
|
|
1835
|
-
});
|
|
1836
|
-
|
|
1837
|
-
// src/common/generators/HttpTask.ts
|
|
1838
|
-
var generateHTTPTask = (overrides = {}) => __spreadProps(__spreadValues(__spreadProps(__spreadValues({}, nameTaskNameGenerator("httpTask", overrides)), {
|
|
1839
|
-
inputParameters: {
|
|
1840
|
-
http_request: {
|
|
1841
|
-
uri: "https://jsonplaceholder.typicode.com/posts/${workflow.input.queryid}",
|
|
1842
|
-
method: "GET"
|
|
2283
|
+
// src/task/Poller.ts
|
|
2284
|
+
var Poller = class {
|
|
2285
|
+
constructor(pollFunction, pollerOptions, logger) {
|
|
2286
|
+
this.concurrentCalls = [];
|
|
2287
|
+
this.pollFunction = async () => {
|
|
2288
|
+
};
|
|
2289
|
+
this.polling = false;
|
|
2290
|
+
this.options = {
|
|
2291
|
+
pollInterval: 1e3,
|
|
2292
|
+
concurrency: 1
|
|
2293
|
+
};
|
|
2294
|
+
this.logger = noopLogger;
|
|
2295
|
+
/**
|
|
2296
|
+
* Starts polling for work
|
|
2297
|
+
*/
|
|
2298
|
+
this.startPolling = () => {
|
|
2299
|
+
if (this.polling) {
|
|
2300
|
+
throw new Error("Runner is already started");
|
|
2301
|
+
}
|
|
2302
|
+
return this.poll();
|
|
2303
|
+
};
|
|
2304
|
+
/**
|
|
2305
|
+
* Stops Polling for work
|
|
2306
|
+
*/
|
|
2307
|
+
this.stopPolling = () => {
|
|
2308
|
+
this.polling = false;
|
|
2309
|
+
this.concurrentCalls.forEach((call) => call.stop());
|
|
2310
|
+
};
|
|
2311
|
+
this.poll = async () => {
|
|
2312
|
+
if (!this.polling) {
|
|
2313
|
+
this.polling = true;
|
|
2314
|
+
for (let i = 0; i < this.options.concurrency; i++) {
|
|
2315
|
+
this.concurrentCalls.push(this.singlePoll());
|
|
2316
|
+
}
|
|
2317
|
+
}
|
|
2318
|
+
};
|
|
2319
|
+
this.singlePoll = () => {
|
|
2320
|
+
let poll = this.polling;
|
|
2321
|
+
let timeout;
|
|
2322
|
+
const pollingCall = async () => {
|
|
2323
|
+
while (poll) {
|
|
2324
|
+
await this.pollFunction();
|
|
2325
|
+
await new Promise(
|
|
2326
|
+
(r) => timeout = setTimeout(() => r(true), this.options.pollInterval)
|
|
2327
|
+
);
|
|
2328
|
+
}
|
|
2329
|
+
};
|
|
2330
|
+
return {
|
|
2331
|
+
promise: pollingCall(),
|
|
2332
|
+
stop: () => {
|
|
2333
|
+
clearTimeout(timeout);
|
|
2334
|
+
poll = false;
|
|
2335
|
+
this.logger.debug("stopping single poll call");
|
|
2336
|
+
}
|
|
2337
|
+
};
|
|
2338
|
+
};
|
|
2339
|
+
this.pollFunction = pollFunction;
|
|
2340
|
+
this.options = { ...this.options, ...pollerOptions };
|
|
2341
|
+
this.logger = logger || noopLogger;
|
|
2342
|
+
}
|
|
2343
|
+
get isPolling() {
|
|
2344
|
+
return this.polling;
|
|
2345
|
+
}
|
|
2346
|
+
/**
|
|
2347
|
+
* adds or shuts down concurrent calls based on the concurrency setting
|
|
2348
|
+
* @param concurrency
|
|
2349
|
+
*/
|
|
2350
|
+
updateConcurrency(concurrency) {
|
|
2351
|
+
if (concurrency > 0 && concurrency !== this.options.concurrency) {
|
|
2352
|
+
if (concurrency < this.options.concurrency) {
|
|
2353
|
+
const result = this.concurrentCalls.splice(
|
|
2354
|
+
0,
|
|
2355
|
+
this.options.concurrency - concurrency
|
|
2356
|
+
);
|
|
2357
|
+
result.forEach((call) => {
|
|
2358
|
+
call.stop();
|
|
2359
|
+
this.logger.debug("stopping some spawned calls");
|
|
2360
|
+
});
|
|
2361
|
+
} else {
|
|
2362
|
+
for (let i = 0; i < concurrency - this.options.concurrency; i++) {
|
|
2363
|
+
this.concurrentCalls.push(this.singlePoll());
|
|
2364
|
+
this.logger.debug("spawning additional poll calls");
|
|
2365
|
+
}
|
|
2366
|
+
}
|
|
2367
|
+
this.options.concurrency = concurrency;
|
|
1843
2368
|
}
|
|
1844
2369
|
}
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
2370
|
+
updateOptions(options) {
|
|
2371
|
+
const newOptions = { ...this.options, ...options };
|
|
2372
|
+
this.updateConcurrency(newOptions.concurrency);
|
|
2373
|
+
this.options = newOptions;
|
|
2374
|
+
}
|
|
2375
|
+
};
|
|
2376
|
+
|
|
2377
|
+
// src/task/TaskRunner.ts
|
|
2378
|
+
var DEFAULT_ERROR_MESSAGE = "An unknown error occurred";
|
|
2379
|
+
var MAX_RETRIES = 3;
|
|
2380
|
+
var noopErrorHandler = (__error) => {
|
|
2381
|
+
};
|
|
2382
|
+
var TaskRunner = class {
|
|
2383
|
+
constructor({
|
|
2384
|
+
worker,
|
|
2385
|
+
taskResource,
|
|
2386
|
+
options,
|
|
2387
|
+
logger = noopLogger,
|
|
2388
|
+
onError: errorHandler = noopErrorHandler
|
|
2389
|
+
}) {
|
|
2390
|
+
/**
|
|
2391
|
+
* Starts polling for work
|
|
2392
|
+
*/
|
|
2393
|
+
this.startPolling = () => {
|
|
2394
|
+
this.poller.startPolling();
|
|
2395
|
+
};
|
|
2396
|
+
/**
|
|
2397
|
+
* Stops Polling for work
|
|
2398
|
+
*/
|
|
2399
|
+
this.stopPolling = () => {
|
|
2400
|
+
this.poller.stopPolling();
|
|
2401
|
+
};
|
|
2402
|
+
this.pollAndExecute = async () => {
|
|
2403
|
+
try {
|
|
2404
|
+
const { workerID } = this.options;
|
|
2405
|
+
const task = await this.taskResource.poll(
|
|
2406
|
+
this.worker.taskDefName,
|
|
2407
|
+
workerID,
|
|
2408
|
+
this.worker.domain ?? this.options.domain
|
|
2409
|
+
);
|
|
2410
|
+
if (task && task.taskId) {
|
|
2411
|
+
await this.executeTask(task);
|
|
2412
|
+
} else {
|
|
2413
|
+
this.logger.debug(`No tasks for ${this.worker.taskDefName}`);
|
|
2414
|
+
}
|
|
2415
|
+
} catch (unknownError) {
|
|
2416
|
+
this.handleUnknownError(unknownError);
|
|
2417
|
+
this.errorHandler(unknownError);
|
|
2418
|
+
}
|
|
2419
|
+
};
|
|
2420
|
+
this.updateTaskWithRetry = async (task, taskResult) => {
|
|
2421
|
+
let retryCount = 0;
|
|
2422
|
+
while (retryCount < MAX_RETRIES) {
|
|
2423
|
+
try {
|
|
2424
|
+
await this.taskResource.updateTask1(taskResult);
|
|
2425
|
+
return;
|
|
2426
|
+
} catch (error) {
|
|
2427
|
+
this.errorHandler(error, task);
|
|
2428
|
+
this.logger.error(
|
|
2429
|
+
`Error updating task ${taskResult.taskId} on retry ${retryCount}`,
|
|
2430
|
+
error
|
|
2431
|
+
);
|
|
2432
|
+
retryCount++;
|
|
2433
|
+
await new Promise((r) => setTimeout(() => r(true), retryCount * 10));
|
|
2434
|
+
}
|
|
2435
|
+
}
|
|
2436
|
+
this.logger.error(
|
|
2437
|
+
`Unable to update task ${taskResult.taskId} after ${retryCount} retries`
|
|
2438
|
+
);
|
|
2439
|
+
};
|
|
2440
|
+
this.executeTask = async (task) => {
|
|
2441
|
+
try {
|
|
2442
|
+
const result = await this.worker.execute(task);
|
|
2443
|
+
await this.updateTaskWithRetry(task, {
|
|
2444
|
+
...result,
|
|
2445
|
+
workflowInstanceId: task.workflowInstanceId,
|
|
2446
|
+
taskId: task.taskId
|
|
2447
|
+
});
|
|
2448
|
+
this.logger.debug(`Finished polling for task ${task.taskId}`);
|
|
2449
|
+
} catch (error) {
|
|
2450
|
+
await this.updateTaskWithRetry(task, {
|
|
2451
|
+
workflowInstanceId: task.workflowInstanceId,
|
|
2452
|
+
taskId: task.taskId,
|
|
2453
|
+
reasonForIncompletion: error?.message ?? DEFAULT_ERROR_MESSAGE,
|
|
2454
|
+
status: "FAILED",
|
|
2455
|
+
outputData: {}
|
|
2456
|
+
});
|
|
2457
|
+
this.errorHandler(error, task);
|
|
2458
|
+
this.logger.error(`Error executing ${task.taskId}`, error);
|
|
2459
|
+
}
|
|
2460
|
+
};
|
|
2461
|
+
this.handleUnknownError = (unknownError) => {
|
|
2462
|
+
let message = "";
|
|
2463
|
+
let stack = "";
|
|
2464
|
+
if (unknownError.stack) {
|
|
2465
|
+
stack = unknownError.stack;
|
|
2466
|
+
}
|
|
2467
|
+
if (unknownError.message) {
|
|
2468
|
+
message = unknownError.message;
|
|
2469
|
+
}
|
|
2470
|
+
this.logger.error(
|
|
2471
|
+
`Error for ${this.worker.taskDefName}: error: ${message}, stack: ${stack}`
|
|
2472
|
+
);
|
|
2473
|
+
};
|
|
2474
|
+
this.taskResource = taskResource;
|
|
2475
|
+
this.logger = logger;
|
|
2476
|
+
this.worker = worker;
|
|
2477
|
+
this.options = options;
|
|
2478
|
+
this.errorHandler = errorHandler;
|
|
2479
|
+
this.poller = new Poller(
|
|
2480
|
+
this.pollAndExecute,
|
|
2481
|
+
{ concurrency: options.concurrency, pollInterval: options.pollInterval },
|
|
2482
|
+
this.logger
|
|
2483
|
+
);
|
|
2484
|
+
}
|
|
2485
|
+
get isPolling() {
|
|
2486
|
+
return this.poller.isPolling;
|
|
2487
|
+
}
|
|
2488
|
+
updateOptions(options) {
|
|
2489
|
+
const newOptions = { ...this.options, ...options };
|
|
2490
|
+
this.poller.updateOptions({
|
|
2491
|
+
concurrency: newOptions.concurrency,
|
|
2492
|
+
pollInterval: newOptions.pollInterval
|
|
2493
|
+
});
|
|
2494
|
+
this.options = newOptions;
|
|
2495
|
+
}
|
|
2496
|
+
get getOptions() {
|
|
2497
|
+
return this.options;
|
|
2498
|
+
}
|
|
2499
|
+
};
|
|
2500
|
+
|
|
2501
|
+
// src/task/TaskManager.ts
|
|
2502
|
+
var import_os = __toESM(require("os"));
|
|
2503
|
+
var defaultManagerOptions = {
|
|
2504
|
+
workerID: "",
|
|
2505
|
+
pollInterval: 1e3,
|
|
2506
|
+
domain: void 0,
|
|
2507
|
+
concurrency: 1
|
|
2508
|
+
};
|
|
2509
|
+
function workerId(options) {
|
|
2510
|
+
return options.workerID ?? import_os.default.hostname();
|
|
2511
|
+
}
|
|
2512
|
+
var TaskManager = class {
|
|
2513
|
+
constructor(client, workers, config = {}) {
|
|
2514
|
+
this.tasks = {};
|
|
2515
|
+
this.polling = false;
|
|
2516
|
+
this.workerManagerWorkerOptions = (worker) => {
|
|
2517
|
+
return {
|
|
2518
|
+
...this.options,
|
|
2519
|
+
concurrency: worker.concurrency ?? this.options.concurrency,
|
|
2520
|
+
domain: worker.domain ?? this.options.domain
|
|
2521
|
+
};
|
|
2522
|
+
};
|
|
2523
|
+
/**
|
|
2524
|
+
* new options will get merged to existing options
|
|
2525
|
+
* @param options new options to update polling options
|
|
2526
|
+
*/
|
|
2527
|
+
this.updatePollingOptions = (options) => {
|
|
2528
|
+
this.workers.forEach((worker) => {
|
|
2529
|
+
const newOptions = {
|
|
2530
|
+
...this.workerManagerWorkerOptions(worker),
|
|
2531
|
+
...options
|
|
2532
|
+
};
|
|
2533
|
+
const runners = this.tasks[worker.taskDefName];
|
|
2534
|
+
runners.forEach((runner) => {
|
|
2535
|
+
runner.updateOptions(newOptions);
|
|
2536
|
+
});
|
|
2537
|
+
});
|
|
2538
|
+
this.options.concurrency = options.concurrency ?? this.options.concurrency;
|
|
2539
|
+
this.options.pollInterval = options.pollInterval ?? this.options.pollInterval;
|
|
2540
|
+
};
|
|
2541
|
+
/**
|
|
2542
|
+
* Start polling for tasks
|
|
2543
|
+
*/
|
|
2544
|
+
this.startPolling = () => {
|
|
2545
|
+
this.workers.forEach((worker) => {
|
|
2546
|
+
this.tasks[worker.taskDefName] = [];
|
|
2547
|
+
const options = this.workerManagerWorkerOptions(worker);
|
|
2548
|
+
this.logger.debug(
|
|
2549
|
+
`Starting taskDefName=${worker.taskDefName} concurrency=${options.concurrency} domain=${options.domain}`
|
|
2550
|
+
);
|
|
2551
|
+
const runner = new TaskRunner({
|
|
2552
|
+
worker,
|
|
2553
|
+
options,
|
|
2554
|
+
taskResource: this.client.taskResource,
|
|
2555
|
+
logger: this.logger,
|
|
2556
|
+
onError: this.errorHandler
|
|
2557
|
+
});
|
|
2558
|
+
runner.startPolling();
|
|
2559
|
+
this.tasks[worker.taskDefName].push(runner);
|
|
2560
|
+
});
|
|
2561
|
+
this.polling = true;
|
|
2562
|
+
};
|
|
2563
|
+
/**
|
|
2564
|
+
* Stops polling for tasks
|
|
2565
|
+
*/
|
|
2566
|
+
this.stopPolling = () => {
|
|
2567
|
+
for (const taskType in this.tasks) {
|
|
2568
|
+
this.tasks[taskType].forEach((runner) => runner.stopPolling());
|
|
2569
|
+
this.tasks[taskType] = [];
|
|
2570
|
+
}
|
|
2571
|
+
this.polling = false;
|
|
2572
|
+
};
|
|
2573
|
+
if (!workers) {
|
|
2574
|
+
throw new Error(
|
|
2575
|
+
"No workers supplied to TaskManager. Please pass an array of workers."
|
|
2576
|
+
);
|
|
2577
|
+
}
|
|
2578
|
+
this.client = client;
|
|
2579
|
+
this.logger = config.logger ?? new DefaultLogger();
|
|
2580
|
+
this.errorHandler = config.onError ?? noopErrorHandler;
|
|
2581
|
+
this.workers = workers;
|
|
2582
|
+
const providedOptions = config.options ?? {};
|
|
2583
|
+
this.options = {
|
|
2584
|
+
...defaultManagerOptions,
|
|
2585
|
+
...providedOptions,
|
|
2586
|
+
workerID: workerId(providedOptions)
|
|
2587
|
+
};
|
|
2588
|
+
}
|
|
2589
|
+
get isPolling() {
|
|
2590
|
+
return this.polling;
|
|
2591
|
+
}
|
|
2592
|
+
};
|
|
2593
|
+
|
|
2594
|
+
// src/core/types.ts
|
|
2595
|
+
var ConductorError = class extends Error {
|
|
2596
|
+
constructor(message, innerError) {
|
|
2597
|
+
super(message);
|
|
2598
|
+
this._trace = innerError;
|
|
2599
|
+
const actualProto = new.target.prototype;
|
|
2600
|
+
if (Object.setPrototypeOf) {
|
|
2601
|
+
Object.setPrototypeOf(this, actualProto);
|
|
2602
|
+
} else {
|
|
2603
|
+
this.__proto__ = actualProto;
|
|
2604
|
+
}
|
|
2605
|
+
}
|
|
2606
|
+
};
|
|
2607
|
+
|
|
2608
|
+
// src/core/helpers.ts
|
|
2609
|
+
var errorMapper = (error) => new ConductorError(error?.body?.message, error);
|
|
2610
|
+
var tryCatchReThrow = (fn) => {
|
|
2611
|
+
try {
|
|
2612
|
+
return fn();
|
|
2613
|
+
} catch (error) {
|
|
2614
|
+
throw errorMapper(error);
|
|
2615
|
+
}
|
|
2616
|
+
};
|
|
2617
|
+
|
|
2618
|
+
// src/core/executor.ts
|
|
2619
|
+
var RETRY_TIME_IN_MILLISECONDS = 1e4;
|
|
2620
|
+
var WorkflowExecutor = class {
|
|
2621
|
+
constructor(client) {
|
|
2622
|
+
this._client = client;
|
|
2623
|
+
}
|
|
2624
|
+
/**
|
|
2625
|
+
* Will persist a workflow in conductor
|
|
2626
|
+
* @param override If true will override the existing workflow with the definition
|
|
2627
|
+
* @param workflow Complete workflow definition
|
|
2628
|
+
* @returns null
|
|
2629
|
+
*/
|
|
2630
|
+
registerWorkflow(override, workflow2) {
|
|
2631
|
+
return tryCatchReThrow(
|
|
2632
|
+
() => this._client.metadataResource.create(workflow2, override)
|
|
2633
|
+
);
|
|
2634
|
+
}
|
|
2635
|
+
/**
|
|
2636
|
+
* Takes a StartWorkflowRequest. returns a Promise<string> with the workflowInstanceId of the running workflow
|
|
2637
|
+
* @param workflowRequest
|
|
2638
|
+
* @returns
|
|
2639
|
+
*/
|
|
2640
|
+
startWorkflow(workflowRequest) {
|
|
2641
|
+
return tryCatchReThrow(
|
|
2642
|
+
() => this._client.workflowResource.startWorkflow(workflowRequest)
|
|
2643
|
+
);
|
|
2644
|
+
}
|
|
2645
|
+
/**
|
|
2646
|
+
* Execute a workflow synchronously. returns a Promise<WorkflowRun> with details of the running workflow
|
|
2647
|
+
* @param workflowRequest
|
|
2648
|
+
* @returns
|
|
2649
|
+
*/
|
|
2650
|
+
executeWorkflow(workflowRequest, name, version, requestId, waitUntilTaskRef = "") {
|
|
2651
|
+
return tryCatchReThrow(
|
|
2652
|
+
() => this._client.workflowResource.executeWorkflow(workflowRequest, name, version, requestId, waitUntilTaskRef)
|
|
2653
|
+
);
|
|
2654
|
+
}
|
|
2655
|
+
startWorkflows(workflowsRequest) {
|
|
2656
|
+
return tryCatchReThrow(() => workflowsRequest.map(this.startWorkflow));
|
|
2657
|
+
}
|
|
2658
|
+
/**
|
|
2659
|
+
* Takes an workflowInstanceId and an includeTasks and an optional retry parameter returns the whole execution status.
|
|
2660
|
+
* If includeTasks flag is provided. Details of tasks execution will be returned as well,
|
|
2661
|
+
* retry specifies the amount of retrys before throwing an error.
|
|
2662
|
+
*
|
|
2663
|
+
* @param workflowInstanceId
|
|
2664
|
+
* @param includeTasks
|
|
2665
|
+
* @param retry
|
|
2666
|
+
* @returns
|
|
2667
|
+
*/
|
|
2668
|
+
async getWorkflow(workflowInstanceId, includeTasks, retry = 0) {
|
|
2669
|
+
try {
|
|
2670
|
+
const workflowStatus = await this._client.workflowResource.getExecutionStatus(
|
|
2671
|
+
workflowInstanceId,
|
|
2672
|
+
includeTasks
|
|
2673
|
+
);
|
|
2674
|
+
return workflowStatus;
|
|
2675
|
+
} catch (error) {
|
|
2676
|
+
if (![500, 404, 403].includes(error.status) || retry === 0) {
|
|
2677
|
+
throw errorMapper(error);
|
|
2678
|
+
}
|
|
2679
|
+
}
|
|
2680
|
+
await new Promise(
|
|
2681
|
+
(res) => setTimeout(() => res(true), RETRY_TIME_IN_MILLISECONDS)
|
|
2682
|
+
);
|
|
2683
|
+
return this.getWorkflow(workflowInstanceId, includeTasks, retry - 1);
|
|
2684
|
+
}
|
|
2685
|
+
/**
|
|
2686
|
+
* Returns a summary of the current workflow status.
|
|
2687
|
+
*
|
|
2688
|
+
* @param workflowInstanceId current running workflow
|
|
2689
|
+
* @param includeOutput flag to include output
|
|
2690
|
+
* @param includeVariables flag to include variable
|
|
2691
|
+
* @returns Promise<WorkflowStatus>
|
|
2692
|
+
*/
|
|
2693
|
+
getWorkflowStatus(workflowInstanceId, includeOutput, includeVariables) {
|
|
2694
|
+
return tryCatchReThrow(
|
|
2695
|
+
() => this._client.workflowResource.getWorkflowStatusSummary(
|
|
2696
|
+
workflowInstanceId,
|
|
2697
|
+
includeOutput,
|
|
2698
|
+
includeVariables
|
|
2699
|
+
)
|
|
2700
|
+
);
|
|
2701
|
+
}
|
|
2702
|
+
/**
|
|
2703
|
+
* Pauses a running workflow
|
|
2704
|
+
* @param workflowInstanceId current workflow execution
|
|
2705
|
+
* @returns
|
|
2706
|
+
*/
|
|
2707
|
+
pause(workflowInstanceId) {
|
|
2708
|
+
return tryCatchReThrow(
|
|
2709
|
+
() => this._client.workflowResource.pauseWorkflow(workflowInstanceId)
|
|
2710
|
+
);
|
|
2711
|
+
}
|
|
2712
|
+
/**
|
|
2713
|
+
* Reruns workflowInstanceId workflow. with new parameters
|
|
2714
|
+
*
|
|
2715
|
+
* @param workflowInstanceId current workflow execution
|
|
2716
|
+
* @param rerunWorkflowRequest Rerun Workflow Execution Request
|
|
2717
|
+
* @returns
|
|
2718
|
+
*/
|
|
2719
|
+
reRun(workflowInstanceId, rerunWorkflowRequest = {}) {
|
|
2720
|
+
return tryCatchReThrow(
|
|
2721
|
+
() => this._client.workflowResource.rerun(
|
|
2722
|
+
workflowInstanceId,
|
|
2723
|
+
rerunWorkflowRequest
|
|
2724
|
+
)
|
|
2725
|
+
);
|
|
2726
|
+
}
|
|
2727
|
+
/**
|
|
2728
|
+
* Restarts workflow with workflowInstanceId, if useLatestDefinition uses last defintion
|
|
2729
|
+
* @param workflowInstanceId
|
|
2730
|
+
* @param useLatestDefinitions
|
|
2731
|
+
* @returns
|
|
2732
|
+
*/
|
|
2733
|
+
restart(workflowInstanceId, useLatestDefinitions) {
|
|
2734
|
+
return tryCatchReThrow(
|
|
2735
|
+
() => this._client.workflowResource.restart1(
|
|
2736
|
+
workflowInstanceId,
|
|
2737
|
+
useLatestDefinitions
|
|
2738
|
+
)
|
|
2739
|
+
);
|
|
2740
|
+
}
|
|
2741
|
+
/**
|
|
2742
|
+
* Resumes a previously paused execution
|
|
2743
|
+
*
|
|
2744
|
+
* @param workflowInstanceId Running workflow workflowInstanceId
|
|
2745
|
+
* @returns
|
|
2746
|
+
*/
|
|
2747
|
+
resume(workflowInstanceId) {
|
|
2748
|
+
return tryCatchReThrow(
|
|
2749
|
+
() => this._client.workflowResource.resumeWorkflow(workflowInstanceId)
|
|
2750
|
+
);
|
|
2751
|
+
}
|
|
2752
|
+
/**
|
|
2753
|
+
* Retrys workflow from last failing task
|
|
2754
|
+
* if resumeSubworkflowTasks is true will resume tasks in spawned subworkflows
|
|
2755
|
+
*
|
|
2756
|
+
* @param workflowInstanceId
|
|
2757
|
+
* @param resumeSubworkflowTasks
|
|
2758
|
+
* @returns
|
|
2759
|
+
*/
|
|
2760
|
+
retry(workflowInstanceId, resumeSubworkflowTasks) {
|
|
2761
|
+
return tryCatchReThrow(
|
|
2762
|
+
() => this._client.workflowResource.retry1(
|
|
2763
|
+
workflowInstanceId,
|
|
2764
|
+
resumeSubworkflowTasks
|
|
2765
|
+
)
|
|
2766
|
+
);
|
|
2767
|
+
}
|
|
2768
|
+
/**
|
|
2769
|
+
* Searches for existing workflows given the following querys
|
|
2770
|
+
*
|
|
2771
|
+
* @param start
|
|
2772
|
+
* @param size
|
|
2773
|
+
* @param query
|
|
2774
|
+
* @param freeText
|
|
2775
|
+
* @param sort
|
|
2776
|
+
* @param skipCache
|
|
2777
|
+
* @returns
|
|
2778
|
+
*/
|
|
2779
|
+
search(start, size, query, freeText, sort = "", skipCache = false) {
|
|
2780
|
+
const queryId = void 0;
|
|
2781
|
+
return tryCatchReThrow(
|
|
2782
|
+
() => this._client.workflowResource.search1(
|
|
2783
|
+
queryId,
|
|
2784
|
+
start,
|
|
2785
|
+
size,
|
|
2786
|
+
sort,
|
|
2787
|
+
freeText,
|
|
2788
|
+
query,
|
|
2789
|
+
skipCache
|
|
2790
|
+
)
|
|
2791
|
+
);
|
|
2792
|
+
}
|
|
2793
|
+
/**
|
|
2794
|
+
* Skips a task of a running workflow.
|
|
2795
|
+
* by providing a skipTaskRequest you can set the input and the output of the skipped tasks
|
|
2796
|
+
* @param workflowInstanceId
|
|
2797
|
+
* @param taskReferenceName
|
|
2798
|
+
* @param skipTaskRequest
|
|
2799
|
+
* @returns
|
|
2800
|
+
*/
|
|
2801
|
+
skipTasksFromWorkflow(workflowInstanceId, taskReferenceName, skipTaskRequest) {
|
|
2802
|
+
return tryCatchReThrow(
|
|
2803
|
+
() => this._client.workflowResource.skipTaskFromWorkflow(
|
|
2804
|
+
workflowInstanceId,
|
|
2805
|
+
taskReferenceName,
|
|
2806
|
+
skipTaskRequest
|
|
2807
|
+
)
|
|
2808
|
+
);
|
|
2809
|
+
}
|
|
2810
|
+
/**
|
|
2811
|
+
* Takes an workflowInstanceId, and terminates a running workflow
|
|
2812
|
+
* @param workflowInstanceId
|
|
2813
|
+
* @param reason
|
|
2814
|
+
* @returns
|
|
2815
|
+
*/
|
|
2816
|
+
terminate(workflowInstanceId, reason) {
|
|
2817
|
+
return tryCatchReThrow(
|
|
2818
|
+
() => this._client.workflowResource.terminate1(workflowInstanceId, reason)
|
|
2819
|
+
);
|
|
2820
|
+
}
|
|
2821
|
+
/**
|
|
2822
|
+
* Takes a taskId and a workflowInstanceId. Will update the task for the corresponding taskId
|
|
2823
|
+
* @param taskId
|
|
2824
|
+
* @param workflowInstanceId
|
|
2825
|
+
* @param taskStatus
|
|
2826
|
+
* @param taskOutput
|
|
2827
|
+
* @returns
|
|
2828
|
+
*/
|
|
2829
|
+
updateTask(taskId, workflowInstanceId, taskStatus, outputData) {
|
|
2830
|
+
const taskUpdates = {
|
|
2831
|
+
status: taskStatus,
|
|
2832
|
+
taskId,
|
|
2833
|
+
workflowInstanceId
|
|
2834
|
+
};
|
|
2835
|
+
return tryCatchReThrow(
|
|
2836
|
+
() => this._client.taskResource.updateTask1({
|
|
2837
|
+
outputData,
|
|
2838
|
+
...taskUpdates
|
|
2839
|
+
})
|
|
2840
|
+
);
|
|
2841
|
+
}
|
|
2842
|
+
/**
|
|
2843
|
+
* Updates a task by reference Name
|
|
2844
|
+
* @param taskReferenceName
|
|
2845
|
+
* @param workflowInstanceId
|
|
2846
|
+
* @param status
|
|
2847
|
+
* @param taskOutput
|
|
2848
|
+
* @returns
|
|
2849
|
+
*/
|
|
2850
|
+
updateTaskByRefName(taskReferenceName, workflowInstanceId, status, taskOutput) {
|
|
2851
|
+
return tryCatchReThrow(
|
|
2852
|
+
() => this._client.taskResource.updateTask(
|
|
2853
|
+
workflowInstanceId,
|
|
2854
|
+
taskReferenceName,
|
|
2855
|
+
status,
|
|
2856
|
+
taskOutput
|
|
2857
|
+
)
|
|
2858
|
+
);
|
|
2859
|
+
}
|
|
2860
|
+
/**
|
|
2861
|
+
*
|
|
2862
|
+
* @param taskId
|
|
2863
|
+
* @returns
|
|
2864
|
+
*/
|
|
2865
|
+
getTask(taskId) {
|
|
2866
|
+
return tryCatchReThrow(() => this._client.taskResource.getTask(taskId));
|
|
2867
|
+
}
|
|
2868
|
+
};
|
|
2869
|
+
|
|
2870
|
+
// src/core/human.ts
|
|
2871
|
+
var HumanExecutor = class {
|
|
2872
|
+
constructor(client) {
|
|
2873
|
+
this._client = client;
|
|
2874
|
+
}
|
|
2875
|
+
/**
|
|
2876
|
+
* Takes a set of filter parameters. return matches of human tasks for that set of parameters
|
|
2877
|
+
* @param state
|
|
2878
|
+
* @param assignee
|
|
2879
|
+
* @param assigneeType
|
|
2880
|
+
* @param claimedBy
|
|
2881
|
+
* @param taskName
|
|
2882
|
+
* @param freeText
|
|
2883
|
+
* @param includeInputOutput
|
|
2884
|
+
* @returns
|
|
2885
|
+
*/
|
|
2886
|
+
async getTasksByFilter(state, assignee, assigneeType, claimedBy, taskName, freeText, includeInputOutput = false) {
|
|
2887
|
+
const response = await this._client.humanTask.getTasksByFilter(
|
|
2888
|
+
state,
|
|
2889
|
+
assignee,
|
|
2890
|
+
assigneeType,
|
|
2891
|
+
claimedBy,
|
|
2892
|
+
taskName,
|
|
2893
|
+
freeText,
|
|
2894
|
+
includeInputOutput
|
|
2895
|
+
);
|
|
2896
|
+
if (response.results != void 0) {
|
|
2897
|
+
return response.results;
|
|
2898
|
+
}
|
|
2899
|
+
return [];
|
|
2900
|
+
}
|
|
2901
|
+
/**
|
|
2902
|
+
* Returns task for a given task id
|
|
2903
|
+
* @param taskId
|
|
2904
|
+
* @returns
|
|
2905
|
+
*/
|
|
2906
|
+
getTaskById(taskId) {
|
|
2907
|
+
return tryCatchReThrow(() => this._client.humanTask.getTask1(taskId));
|
|
2908
|
+
}
|
|
2909
|
+
/**
|
|
2910
|
+
* Assigns taskId to assignee. If the task is already assigned to another user, this will fail.
|
|
2911
|
+
* @param taskId
|
|
2912
|
+
* @param assignee
|
|
2913
|
+
* @returns
|
|
2914
|
+
*/
|
|
2915
|
+
async claimTaskAsExternalUser(taskId, assignee) {
|
|
2916
|
+
try {
|
|
2917
|
+
await this._client.humanTask.assignAndClaim(taskId, assignee);
|
|
2918
|
+
} catch (error) {
|
|
2919
|
+
throw errorMapper(error);
|
|
2920
|
+
}
|
|
2921
|
+
}
|
|
2922
|
+
/**
|
|
2923
|
+
* Claim task as conductor user
|
|
2924
|
+
* @param taskId
|
|
2925
|
+
* @returns
|
|
2926
|
+
*/
|
|
2927
|
+
async claimTaskAsConductorUser(taskId) {
|
|
2928
|
+
try {
|
|
2929
|
+
await this._client.humanTask.claimTask(taskId);
|
|
2930
|
+
} catch (error) {
|
|
2931
|
+
throw errorMapper(error);
|
|
2932
|
+
}
|
|
2933
|
+
}
|
|
2934
|
+
/**
|
|
2935
|
+
* Claim task as conductor user
|
|
2936
|
+
* @param taskId
|
|
2937
|
+
* @param assignee
|
|
2938
|
+
* @returns
|
|
2939
|
+
*/
|
|
2940
|
+
async releaseTask(taskId) {
|
|
2941
|
+
try {
|
|
2942
|
+
await this._client.humanTask.releaseTask(taskId);
|
|
2943
|
+
} catch (error) {
|
|
2944
|
+
throw errorMapper(error);
|
|
2945
|
+
}
|
|
2946
|
+
}
|
|
2947
|
+
/**
|
|
2948
|
+
* Returns a HumanTaskTemplateEntry for a given templateId
|
|
2949
|
+
* @param templateId
|
|
2950
|
+
* @returns
|
|
2951
|
+
*/
|
|
2952
|
+
async getTemplateById(templateId) {
|
|
2953
|
+
return tryCatchReThrow(
|
|
2954
|
+
() => this._client.humanTask.getTemplateById(templateId)
|
|
2955
|
+
);
|
|
2956
|
+
}
|
|
2957
|
+
/**
|
|
2958
|
+
* Takes a taskId and a partial body. will update with given body
|
|
2959
|
+
* @param taskId
|
|
2960
|
+
* @param requestBody
|
|
2961
|
+
*/
|
|
2962
|
+
async updateTaskOutput(taskId, requestBody) {
|
|
2963
|
+
try {
|
|
2964
|
+
await this._client.humanTask.updateTaskOutput(taskId, requestBody, false);
|
|
2965
|
+
} catch (error) {
|
|
2966
|
+
throw errorMapper(error);
|
|
2967
|
+
}
|
|
2968
|
+
}
|
|
2969
|
+
/**
|
|
2970
|
+
* Takes a taskId and an optional partial body. will complete the task with the given body
|
|
2971
|
+
* @param taskId
|
|
2972
|
+
* @param requestBody
|
|
2973
|
+
*/
|
|
2974
|
+
async completeTask(taskId, requestBody = {}) {
|
|
2975
|
+
try {
|
|
2976
|
+
await this._client.humanTask.updateTaskOutput(taskId, requestBody, true);
|
|
2977
|
+
} catch (error) {
|
|
2978
|
+
throw errorMapper(error);
|
|
2979
|
+
}
|
|
2980
|
+
}
|
|
2981
|
+
};
|
|
2982
|
+
|
|
2983
|
+
// src/core/sdk/doWhile.ts
|
|
2984
|
+
var doWhileTask = (taskRefName, terminationCondition, tasks) => ({
|
|
2985
|
+
name: taskRefName,
|
|
2986
|
+
taskReferenceName: taskRefName,
|
|
2987
|
+
loopCondition: terminationCondition,
|
|
2988
|
+
inputParameters: {},
|
|
2989
|
+
type: "DO_WHILE" /* DO_WHILE */,
|
|
2990
|
+
loopOver: tasks
|
|
2991
|
+
});
|
|
2992
|
+
var loopForCondition = (taskRefName, valueKey) => `if ( $.${taskRefName}['iteration'] < $.${valueKey} ) { true; } else { false; }`;
|
|
2993
|
+
var newLoopTask = (taskRefName, iterations, tasks) => ({
|
|
2994
|
+
name: taskRefName,
|
|
2995
|
+
taskReferenceName: taskRefName,
|
|
2996
|
+
loopCondition: loopForCondition(taskRefName, "value"),
|
|
2997
|
+
inputParameters: {
|
|
2998
|
+
value: iterations
|
|
2999
|
+
},
|
|
3000
|
+
type: "DO_WHILE" /* DO_WHILE */,
|
|
3001
|
+
loopOver: tasks
|
|
3002
|
+
});
|
|
3003
|
+
|
|
3004
|
+
// src/core/sdk/dynamicFork.ts
|
|
3005
|
+
var dynamicForkTask = (taskReferenceName, preForkTasks = [], dynamicTasksInput = "") => ({
|
|
3006
|
+
name: taskReferenceName,
|
|
3007
|
+
taskReferenceName,
|
|
3008
|
+
inputParameters: {
|
|
3009
|
+
dynamicTasks: preForkTasks,
|
|
3010
|
+
dynamicTasksInput
|
|
3011
|
+
},
|
|
3012
|
+
type: "FORK_JOIN_DYNAMIC" /* FORK_JOIN_DYNAMIC */,
|
|
3013
|
+
dynamicForkTasksParam: "dynamicTasks",
|
|
3014
|
+
dynamicForkTasksInputParamName: "dynamicTasksInput"
|
|
3015
|
+
});
|
|
3016
|
+
|
|
3017
|
+
// src/core/sdk/event.ts
|
|
3018
|
+
var eventTask = (taskReferenceName, eventPrefix, eventSuffix) => ({
|
|
3019
|
+
name: taskReferenceName,
|
|
3020
|
+
taskReferenceName,
|
|
3021
|
+
sink: `${eventPrefix}:${eventSuffix}`,
|
|
3022
|
+
type: "EVENT" /* EVENT */
|
|
3023
|
+
});
|
|
3024
|
+
var sqsEventTask = (taskReferenceName, queueName) => eventTask(taskReferenceName, "sqs", queueName);
|
|
3025
|
+
var conductorEventTask = (taskReferenceName, eventName) => eventTask(taskReferenceName, "conductor", eventName);
|
|
3026
|
+
|
|
3027
|
+
// src/core/generators/common.ts
|
|
3028
|
+
var randomChars = (n = 7) => (Math.random() + 1).toString(36).substring(n);
|
|
3029
|
+
var taskNameGenerator = (taskType) => `${taskType}__task_${randomChars(7)}`;
|
|
3030
|
+
var taskReferenceNameGenerator = (taskName) => `${taskName}_ref`;
|
|
3031
|
+
var nameTaskNameGenerator = (taskType, maybeOverrides = {}) => {
|
|
3032
|
+
const name = maybeOverrides?.name ?? taskNameGenerator(taskType);
|
|
3033
|
+
return {
|
|
3034
|
+
name,
|
|
3035
|
+
taskReferenceName: taskReferenceNameGenerator(name)
|
|
3036
|
+
};
|
|
3037
|
+
};
|
|
3038
|
+
function mapArrValues(arrayTransformer, mapWithValues) {
|
|
3039
|
+
return Object.fromEntries(
|
|
3040
|
+
Object.entries(mapWithValues).map(([key, value]) => [
|
|
3041
|
+
key,
|
|
3042
|
+
arrayTransformer(value)
|
|
3043
|
+
])
|
|
3044
|
+
);
|
|
3045
|
+
}
|
|
3046
|
+
|
|
3047
|
+
// src/core/generators/SimpleTask.ts
|
|
3048
|
+
var generateSimpleTask = (overrides = {}) => ({
|
|
3049
|
+
...nameTaskNameGenerator("simple", overrides),
|
|
3050
|
+
inputParameters: {},
|
|
3051
|
+
...overrides,
|
|
3052
|
+
type: "SIMPLE" /* SIMPLE */
|
|
3053
|
+
});
|
|
3054
|
+
|
|
3055
|
+
// src/core/generators/DoWhileTask.ts
|
|
3056
|
+
var generateDoWhileTask = (overrides = {}, nestedTasksMapper) => ({
|
|
3057
|
+
...nameTaskNameGenerator("doWhile", overrides),
|
|
3058
|
+
inputParameters: {},
|
|
3059
|
+
startDelay: 0,
|
|
3060
|
+
optional: false,
|
|
3061
|
+
asyncComplete: false,
|
|
3062
|
+
loopCondition: "",
|
|
3063
|
+
...overrides,
|
|
3064
|
+
loopOver: nestedTasksMapper(overrides?.loopOver || []),
|
|
3065
|
+
type: "DO_WHILE" /* DO_WHILE */
|
|
3066
|
+
});
|
|
3067
|
+
|
|
3068
|
+
// src/core/generators/EventTask.ts
|
|
3069
|
+
var generateEventTask = (overrides = {}) => ({
|
|
3070
|
+
...nameTaskNameGenerator("event", overrides),
|
|
3071
|
+
sink: "sqs:sqs_queue_name",
|
|
3072
|
+
asyncComplete: false,
|
|
3073
|
+
...overrides,
|
|
3074
|
+
type: "EVENT" /* EVENT */
|
|
3075
|
+
});
|
|
3076
|
+
|
|
3077
|
+
// src/core/generators/ForkJoin.ts
|
|
3078
|
+
var generateForkJoinTask = (overrides = {}, nestedMapper) => ({
|
|
3079
|
+
...nameTaskNameGenerator("forkJoin", overrides),
|
|
3080
|
+
inputParameters: {},
|
|
3081
|
+
...overrides,
|
|
3082
|
+
type: "FORK_JOIN" /* FORK_JOIN */,
|
|
3083
|
+
forkTasks: (overrides?.forkTasks || []).map(nestedMapper)
|
|
3084
|
+
});
|
|
3085
|
+
var generateJoinTask = (overrides = {}) => ({
|
|
3086
|
+
...nameTaskNameGenerator("join", overrides),
|
|
3087
|
+
inputParameters: {},
|
|
3088
|
+
joinOn: [],
|
|
3089
|
+
optional: false,
|
|
3090
|
+
asyncComplete: false,
|
|
3091
|
+
...overrides,
|
|
3092
|
+
type: "JOIN" /* JOIN */
|
|
3093
|
+
});
|
|
3094
|
+
|
|
3095
|
+
// src/core/generators/HttpTask.ts
|
|
3096
|
+
var generateHTTPTask = (overrides = {}) => ({
|
|
3097
|
+
...nameTaskNameGenerator("httpTask", overrides),
|
|
3098
|
+
inputParameters: {
|
|
3099
|
+
http_request: {
|
|
3100
|
+
uri: "https://jsonplaceholder.typicode.com/posts/${workflow.input.queryid}",
|
|
3101
|
+
method: "GET"
|
|
3102
|
+
}
|
|
3103
|
+
},
|
|
3104
|
+
...overrides,
|
|
3105
|
+
type: "HTTP" /* HTTP */
|
|
3106
|
+
});
|
|
3107
|
+
|
|
3108
|
+
// src/core/generators/InlineTask.ts
|
|
3109
|
+
var defaultInputParams = {
|
|
3110
|
+
value: "${workflow.input.value}",
|
|
3111
|
+
evaluatorType: "graaljs",
|
|
3112
|
+
expression: "true"
|
|
1854
3113
|
};
|
|
1855
3114
|
var generateEvaluationCode = (inputParametersPartial = {}) => {
|
|
1856
3115
|
const inlinePartialDefJavascript = inputParametersPartial;
|
|
@@ -1858,24 +3117,29 @@ var generateEvaluationCode = (inputParametersPartial = {}) => {
|
|
|
1858
3117
|
if (inlineExpression !== void 0 && typeof inlineExpression === "function") {
|
|
1859
3118
|
const resultingFunction = inlineExpression();
|
|
1860
3119
|
const resultingFunctionAsString = resultingFunction.toString();
|
|
1861
|
-
const toReturn =
|
|
1862
|
-
evaluatorType: "graaljs"
|
|
1863
|
-
|
|
3120
|
+
const toReturn = {
|
|
3121
|
+
evaluatorType: "graaljs",
|
|
3122
|
+
...inputParametersPartial || { value: "true" },
|
|
1864
3123
|
expression: `(${resultingFunctionAsString})();`
|
|
1865
|
-
}
|
|
3124
|
+
};
|
|
1866
3125
|
return toReturn;
|
|
1867
3126
|
}
|
|
1868
|
-
return
|
|
1869
|
-
|
|
1870
|
-
|
|
3127
|
+
return {
|
|
3128
|
+
...defaultInputParams,
|
|
3129
|
+
evaluatorType: "graaljs",
|
|
3130
|
+
...inputParametersPartial
|
|
3131
|
+
};
|
|
1871
3132
|
};
|
|
1872
|
-
var generateInlineTask = (override = {}) =>
|
|
3133
|
+
var generateInlineTask = (override = {}) => ({
|
|
3134
|
+
...nameTaskNameGenerator("inline", override),
|
|
3135
|
+
...override,
|
|
1873
3136
|
inputParameters: generateEvaluationCode(override?.inputParameters || {}),
|
|
1874
3137
|
type: "INLINE" /* INLINE */
|
|
1875
3138
|
});
|
|
1876
3139
|
|
|
1877
|
-
// src/
|
|
1878
|
-
var generateJQTransformTask = (overrides = {}) =>
|
|
3140
|
+
// src/core/generators/JsonJQTransform.ts
|
|
3141
|
+
var generateJQTransformTask = (overrides = {}) => ({
|
|
3142
|
+
...nameTaskNameGenerator("jqTransform", overrides),
|
|
1879
3143
|
inputParameters: {
|
|
1880
3144
|
key1: {
|
|
1881
3145
|
value1: ["a", "b"]
|
|
@@ -1884,13 +3148,14 @@ var generateJQTransformTask = (overrides = {}) => __spreadProps(__spreadValues(_
|
|
|
1884
3148
|
value2: ["c", "d"]
|
|
1885
3149
|
},
|
|
1886
3150
|
queryExpression: "{ key3: (.key1.value1 + .key2.value2) }"
|
|
1887
|
-
}
|
|
1888
|
-
|
|
3151
|
+
},
|
|
3152
|
+
...overrides,
|
|
1889
3153
|
type: "JSON_JQ_TRANSFORM" /* JSON_JQ_TRANSFORM */
|
|
1890
3154
|
});
|
|
1891
3155
|
|
|
1892
|
-
// src/
|
|
1893
|
-
var generateKafkaPublishTask = (overrides = {}) =>
|
|
3156
|
+
// src/core/generators/KafkaTask.ts
|
|
3157
|
+
var generateKafkaPublishTask = (overrides = {}) => ({
|
|
3158
|
+
...nameTaskNameGenerator("kafka", overrides),
|
|
1894
3159
|
inputParameters: {
|
|
1895
3160
|
kafka_request: {
|
|
1896
3161
|
topic: "topic",
|
|
@@ -1900,65 +3165,72 @@ var generateKafkaPublishTask = (overrides = {}) => __spreadProps(__spreadValues(
|
|
|
1900
3165
|
key: "123",
|
|
1901
3166
|
keySerializer: "org.apache.kafka.common.serialization.IntegerSerializer"
|
|
1902
3167
|
}
|
|
1903
|
-
}
|
|
1904
|
-
|
|
3168
|
+
},
|
|
3169
|
+
...overrides,
|
|
1905
3170
|
type: "KAFKA_PUBLISH" /* KAFKA_PUBLISH */
|
|
1906
3171
|
});
|
|
1907
3172
|
|
|
1908
|
-
// src/
|
|
1909
|
-
var generateSubWorkflowTask = (overrides = {}) =>
|
|
3173
|
+
// src/core/generators/SubWorkflowTask.ts
|
|
3174
|
+
var generateSubWorkflowTask = (overrides = {}) => ({
|
|
3175
|
+
...nameTaskNameGenerator("subWorkflow", overrides),
|
|
1910
3176
|
inputParameters: {},
|
|
1911
3177
|
subWorkflowParam: {
|
|
1912
3178
|
name: "name",
|
|
1913
3179
|
version: 1,
|
|
1914
3180
|
taskToDomain: {}
|
|
1915
|
-
}
|
|
1916
|
-
|
|
3181
|
+
},
|
|
3182
|
+
...overrides,
|
|
1917
3183
|
type: "SUB_WORKFLOW" /* SUB_WORKFLOW */
|
|
1918
3184
|
});
|
|
1919
3185
|
|
|
1920
|
-
// src/
|
|
1921
|
-
var generateSetVariableTask = (overrides = {}) =>
|
|
1922
|
-
|
|
1923
|
-
}
|
|
3186
|
+
// src/core/generators/SetVariableTask.ts
|
|
3187
|
+
var generateSetVariableTask = (overrides = {}) => ({
|
|
3188
|
+
...nameTaskNameGenerator("setVariable", overrides),
|
|
3189
|
+
inputParameters: {},
|
|
3190
|
+
...overrides,
|
|
1924
3191
|
type: "SET_VARIABLE" /* SET_VARIABLE */
|
|
1925
3192
|
});
|
|
1926
3193
|
|
|
1927
|
-
// src/
|
|
1928
|
-
var generateTerminateTask = (overrides = {}) =>
|
|
3194
|
+
// src/core/generators/TerminateTask.ts
|
|
3195
|
+
var generateTerminateTask = (overrides = {}) => ({
|
|
3196
|
+
...nameTaskNameGenerator("terminate", overrides),
|
|
1929
3197
|
inputParameters: {
|
|
1930
3198
|
terminationStatus: "COMPLETED",
|
|
1931
3199
|
workflowOutput: {}
|
|
1932
3200
|
},
|
|
1933
3201
|
startDelay: 0,
|
|
1934
|
-
optional: false
|
|
1935
|
-
|
|
3202
|
+
optional: false,
|
|
3203
|
+
...overrides,
|
|
1936
3204
|
type: "TERMINATE" /* TERMINATE */
|
|
1937
3205
|
});
|
|
1938
3206
|
|
|
1939
|
-
// src/
|
|
1940
|
-
var generateWaitTask = (overrides = {}) =>
|
|
3207
|
+
// src/core/generators/WaitTask.ts
|
|
3208
|
+
var generateWaitTask = (overrides = {}) => ({
|
|
3209
|
+
...nameTaskNameGenerator("wait", overrides),
|
|
3210
|
+
...overrides,
|
|
1941
3211
|
inputParameters: {},
|
|
1942
3212
|
type: "WAIT" /* WAIT */
|
|
1943
3213
|
});
|
|
1944
3214
|
|
|
1945
|
-
// src/
|
|
3215
|
+
// src/core/generators/SwitchTask.ts
|
|
1946
3216
|
var fillSwitchTaskBranches = (task, mapper) => ({
|
|
1947
3217
|
decisionCases: mapArrValues(mapper, task?.decisionCases || {}),
|
|
1948
3218
|
defaultCase: mapper(task?.defaultCase || [])
|
|
1949
3219
|
});
|
|
1950
|
-
var generateSwitchTask = (overrides = {}, nestedTasksMapper) =>
|
|
3220
|
+
var generateSwitchTask = (overrides = {}, nestedTasksMapper) => ({
|
|
3221
|
+
...nameTaskNameGenerator("switch", overrides),
|
|
1951
3222
|
inputParameters: {
|
|
1952
3223
|
switchCaseValue: ""
|
|
1953
3224
|
},
|
|
1954
3225
|
evaluatorType: "value-param",
|
|
1955
|
-
expression: "switchCaseValue"
|
|
1956
|
-
|
|
3226
|
+
expression: "switchCaseValue",
|
|
3227
|
+
...overrides,
|
|
3228
|
+
...fillSwitchTaskBranches(overrides, nestedTasksMapper),
|
|
1957
3229
|
type: "SWITCH" /* SWITCH */
|
|
1958
3230
|
});
|
|
1959
3231
|
|
|
1960
|
-
// src/
|
|
1961
|
-
var workflowGenerator = (overrides) =>
|
|
3232
|
+
// src/core/generators/WorkflowGenerator.ts
|
|
3233
|
+
var workflowGenerator = (overrides) => ({
|
|
1962
3234
|
name: "NewWorkflow_3nxbi",
|
|
1963
3235
|
description: "Edit or extend this sample workflow. Set the workflow name to get started",
|
|
1964
3236
|
version: 1,
|
|
@@ -1970,11 +3242,13 @@ var workflowGenerator = (overrides) => __spreadValues({
|
|
|
1970
3242
|
workflowStatusListenerEnabled: false,
|
|
1971
3243
|
ownerEmail: "james.stuart@orkes.io",
|
|
1972
3244
|
timeoutPolicy: "ALERT_ONLY",
|
|
1973
|
-
timeoutSeconds: 0
|
|
1974
|
-
|
|
3245
|
+
timeoutSeconds: 0,
|
|
3246
|
+
...overrides
|
|
3247
|
+
});
|
|
1975
3248
|
|
|
1976
|
-
// src/
|
|
1977
|
-
var generateForkJoinDynamic = (overrides = {}) =>
|
|
3249
|
+
// src/core/generators/ForkJoinDynamicTask.ts
|
|
3250
|
+
var generateForkJoinDynamic = (overrides = {}) => ({
|
|
3251
|
+
...nameTaskNameGenerator("forkJoinDynamic", overrides),
|
|
1978
3252
|
inputParameters: {
|
|
1979
3253
|
dynamicTasks: "",
|
|
1980
3254
|
dynamicTasksInput: ""
|
|
@@ -1983,12 +3257,12 @@ var generateForkJoinDynamic = (overrides = {}) => __spreadProps(__spreadValues(_
|
|
|
1983
3257
|
dynamicForkTasksInputParamName: "dynamicTasksInput",
|
|
1984
3258
|
startDelay: 0,
|
|
1985
3259
|
optional: false,
|
|
1986
|
-
asyncComplete: false
|
|
1987
|
-
|
|
3260
|
+
asyncComplete: false,
|
|
3261
|
+
...overrides,
|
|
1988
3262
|
type: "FORK_JOIN_DYNAMIC" /* FORK_JOIN_DYNAMIC */
|
|
1989
3263
|
});
|
|
1990
3264
|
|
|
1991
|
-
// src/
|
|
3265
|
+
// src/core/generators/generator.ts
|
|
1992
3266
|
var filledTaskDef = (task) => {
|
|
1993
3267
|
const taskType = task.type;
|
|
1994
3268
|
switch (taskType) {
|
|
@@ -2040,59 +3314,15 @@ var maybeAddJoinTask = (currentTask, maybeNextTask) => {
|
|
|
2040
3314
|
var generate = (overrides) => {
|
|
2041
3315
|
const maybeTasks = overrides.tasks || [];
|
|
2042
3316
|
const generatedTasks = taskGenMapper(maybeTasks);
|
|
2043
|
-
return workflowGenerator(
|
|
3317
|
+
return workflowGenerator({ ...overrides, tasks: generatedTasks });
|
|
2044
3318
|
};
|
|
2045
3319
|
|
|
2046
|
-
// src/
|
|
3320
|
+
// src/core/generators/index.ts
|
|
2047
3321
|
var generateSwitchTask2 = (overrides = {}, nestedTasksMapper = taskGenMapper) => generateSwitchTask(overrides, nestedTasksMapper);
|
|
2048
3322
|
var generateDoWhileTask2 = (overrides = {}, nestedTasksMapper = taskGenMapper) => generateDoWhileTask(overrides, nestedTasksMapper);
|
|
2049
3323
|
var generateForkJoinTask2 = (overrides = {}, nestedMapper = taskGenMapper) => generateForkJoinTask(overrides, nestedMapper);
|
|
2050
3324
|
|
|
2051
|
-
// src/
|
|
2052
|
-
var doWhileTask = (taskRefName, terminationCondition, tasks) => ({
|
|
2053
|
-
name: taskRefName,
|
|
2054
|
-
taskReferenceName: taskRefName,
|
|
2055
|
-
loopCondition: terminationCondition,
|
|
2056
|
-
inputParameters: {},
|
|
2057
|
-
type: "DO_WHILE" /* DO_WHILE */,
|
|
2058
|
-
loopOver: tasks
|
|
2059
|
-
});
|
|
2060
|
-
var loopForCondition = (taskRefName, valueKey) => `if ( $.${taskRefName}['iteration'] < $.${valueKey} ) { true; } else { false; }`;
|
|
2061
|
-
var newLoopTask = (taskRefName, iterations, tasks) => ({
|
|
2062
|
-
name: taskRefName,
|
|
2063
|
-
taskReferenceName: taskRefName,
|
|
2064
|
-
loopCondition: loopForCondition(taskRefName, "value"),
|
|
2065
|
-
inputParameters: {
|
|
2066
|
-
value: iterations
|
|
2067
|
-
},
|
|
2068
|
-
type: "DO_WHILE" /* DO_WHILE */,
|
|
2069
|
-
loopOver: tasks
|
|
2070
|
-
});
|
|
2071
|
-
|
|
2072
|
-
// src/common/sdk/dynamicFork.ts
|
|
2073
|
-
var dynamicForkTask = (taskReferenceName, preForkTasks = [], dynamicTasksInput = "") => ({
|
|
2074
|
-
name: taskReferenceName,
|
|
2075
|
-
taskReferenceName,
|
|
2076
|
-
inputParameters: {
|
|
2077
|
-
dynamicTasks: preForkTasks,
|
|
2078
|
-
dynamicTasksInput
|
|
2079
|
-
},
|
|
2080
|
-
type: "FORK_JOIN_DYNAMIC" /* FORK_JOIN_DYNAMIC */,
|
|
2081
|
-
dynamicForkTasksParam: "dynamicTasks",
|
|
2082
|
-
dynamicForkTasksInputParamName: "dynamicTasksInput"
|
|
2083
|
-
});
|
|
2084
|
-
|
|
2085
|
-
// src/common/sdk/event.ts
|
|
2086
|
-
var eventTask = (taskReferenceName, eventPrefix, eventSuffix) => ({
|
|
2087
|
-
name: taskReferenceName,
|
|
2088
|
-
taskReferenceName,
|
|
2089
|
-
sink: `${eventPrefix}:${eventSuffix}`,
|
|
2090
|
-
type: "EVENT" /* EVENT */
|
|
2091
|
-
});
|
|
2092
|
-
var sqsEventTask = (taskReferenceName, queueName) => eventTask(taskReferenceName, "sqs", queueName);
|
|
2093
|
-
var conductorEventTask = (taskReferenceName, eventName) => eventTask(taskReferenceName, "conductor", eventName);
|
|
2094
|
-
|
|
2095
|
-
// src/common/sdk/forkJoin.ts
|
|
3325
|
+
// src/core/sdk/forkJoin.ts
|
|
2096
3326
|
var forkTask = (taskReferenceName, forkTasks) => ({
|
|
2097
3327
|
taskReferenceName,
|
|
2098
3328
|
name: taskReferenceName,
|
|
@@ -2104,7 +3334,7 @@ var forkTaskJoin = (taskReferenceName, forkTasks) => [
|
|
|
2104
3334
|
generateJoinTask({ name: `${taskReferenceName}_join` })
|
|
2105
3335
|
];
|
|
2106
3336
|
|
|
2107
|
-
// src/
|
|
3337
|
+
// src/core/sdk/http.ts
|
|
2108
3338
|
var httpTask = (taskReferenceName, inputParameters) => ({
|
|
2109
3339
|
name: taskReferenceName,
|
|
2110
3340
|
taskReferenceName,
|
|
@@ -2114,7 +3344,7 @@ var httpTask = (taskReferenceName, inputParameters) => ({
|
|
|
2114
3344
|
type: "HTTP" /* HTTP */
|
|
2115
3345
|
});
|
|
2116
3346
|
|
|
2117
|
-
// src/
|
|
3347
|
+
// src/core/sdk/inline.ts
|
|
2118
3348
|
var inlineTask = (taskReferenceName, script, evaluatorType = "javascript") => ({
|
|
2119
3349
|
name: taskReferenceName,
|
|
2120
3350
|
taskReferenceName,
|
|
@@ -2125,7 +3355,7 @@ var inlineTask = (taskReferenceName, script, evaluatorType = "javascript") => ({
|
|
|
2125
3355
|
type: "INLINE" /* INLINE */
|
|
2126
3356
|
});
|
|
2127
3357
|
|
|
2128
|
-
// src/
|
|
3358
|
+
// src/core/sdk/join.ts
|
|
2129
3359
|
var joinTask = (taskReferenceName, joinOn) => ({
|
|
2130
3360
|
name: taskReferenceName,
|
|
2131
3361
|
taskReferenceName,
|
|
@@ -2133,7 +3363,7 @@ var joinTask = (taskReferenceName, joinOn) => ({
|
|
|
2133
3363
|
type: "JOIN" /* JOIN */
|
|
2134
3364
|
});
|
|
2135
3365
|
|
|
2136
|
-
// src/
|
|
3366
|
+
// src/core/sdk/jsonJq.ts
|
|
2137
3367
|
var jsonJqTask = (taskReferenceName, script) => ({
|
|
2138
3368
|
name: taskReferenceName,
|
|
2139
3369
|
taskReferenceName,
|
|
@@ -2143,7 +3373,7 @@ var jsonJqTask = (taskReferenceName, script) => ({
|
|
|
2143
3373
|
}
|
|
2144
3374
|
});
|
|
2145
3375
|
|
|
2146
|
-
// src/
|
|
3376
|
+
// src/core/sdk/kafkaPublish.ts
|
|
2147
3377
|
var kafkaPublishTask = (taskReferenceName, kafka_request) => ({
|
|
2148
3378
|
taskReferenceName,
|
|
2149
3379
|
name: taskReferenceName,
|
|
@@ -2153,7 +3383,7 @@ var kafkaPublishTask = (taskReferenceName, kafka_request) => ({
|
|
|
2153
3383
|
}
|
|
2154
3384
|
});
|
|
2155
3385
|
|
|
2156
|
-
// src/
|
|
3386
|
+
// src/core/sdk/setVariable.ts
|
|
2157
3387
|
var setVariableTask = (taskReferenceName, inputParameters) => ({
|
|
2158
3388
|
name: taskReferenceName,
|
|
2159
3389
|
taskReferenceName,
|
|
@@ -2161,7 +3391,7 @@ var setVariableTask = (taskReferenceName, inputParameters) => ({
|
|
|
2161
3391
|
inputParameters
|
|
2162
3392
|
});
|
|
2163
3393
|
|
|
2164
|
-
// src/
|
|
3394
|
+
// src/core/sdk/simple.ts
|
|
2165
3395
|
var simpleTask = (taskReferenceName, name, inputParameters) => ({
|
|
2166
3396
|
name,
|
|
2167
3397
|
taskReferenceName,
|
|
@@ -2169,7 +3399,7 @@ var simpleTask = (taskReferenceName, name, inputParameters) => ({
|
|
|
2169
3399
|
type: "SIMPLE" /* SIMPLE */
|
|
2170
3400
|
});
|
|
2171
3401
|
|
|
2172
|
-
// src/
|
|
3402
|
+
// src/core/sdk/subWorkflow.ts
|
|
2173
3403
|
var subWorkflowTask = (taskReferenceName, workflowName, version) => ({
|
|
2174
3404
|
name: taskReferenceName,
|
|
2175
3405
|
taskReferenceName,
|
|
@@ -2180,7 +3410,7 @@ var subWorkflowTask = (taskReferenceName, workflowName, version) => ({
|
|
|
2180
3410
|
type: "SUB_WORKFLOW" /* SUB_WORKFLOW */
|
|
2181
3411
|
});
|
|
2182
3412
|
|
|
2183
|
-
// src/
|
|
3413
|
+
// src/core/sdk/switch.ts
|
|
2184
3414
|
var switchTask = (taskReferenceName, expression, decisionCases = {}, defaultCase = []) => ({
|
|
2185
3415
|
name: taskReferenceName,
|
|
2186
3416
|
taskReferenceName,
|
|
@@ -2194,7 +3424,7 @@ var switchTask = (taskReferenceName, expression, decisionCases = {}, defaultCase
|
|
|
2194
3424
|
type: "SWITCH" /* SWITCH */
|
|
2195
3425
|
});
|
|
2196
3426
|
|
|
2197
|
-
// src/
|
|
3427
|
+
// src/core/sdk/terminate.ts
|
|
2198
3428
|
var terminateTask = (taskReferenceName, status, terminationReason) => ({
|
|
2199
3429
|
name: taskReferenceName,
|
|
2200
3430
|
taskReferenceName,
|
|
@@ -2205,7 +3435,7 @@ var terminateTask = (taskReferenceName, status, terminationReason) => ({
|
|
|
2205
3435
|
type: "TERMINATE" /* TERMINATE */
|
|
2206
3436
|
});
|
|
2207
3437
|
|
|
2208
|
-
// src/
|
|
3438
|
+
// src/core/sdk/wait.ts
|
|
2209
3439
|
var waitTaskDuration = (taskReferenceName, duration) => ({
|
|
2210
3440
|
name: taskReferenceName,
|
|
2211
3441
|
taskReferenceName,
|
|
@@ -2223,240 +3453,369 @@ var waitTaskUntil = (taskReferenceName, until) => ({
|
|
|
2223
3453
|
type: "WAIT" /* WAIT */
|
|
2224
3454
|
});
|
|
2225
3455
|
|
|
2226
|
-
// src/
|
|
2227
|
-
var workflow = (name, tasks) => ({
|
|
2228
|
-
name,
|
|
2229
|
-
version: 1,
|
|
2230
|
-
tasks,
|
|
2231
|
-
inputParameters: [],
|
|
2232
|
-
timeoutSeconds: 0
|
|
2233
|
-
});
|
|
2234
|
-
|
|
2235
|
-
// src/
|
|
2236
|
-
var
|
|
2237
|
-
|
|
2238
|
-
|
|
2239
|
-
|
|
2240
|
-
};
|
|
2241
|
-
|
|
2242
|
-
// src/task/TaskManager.ts
|
|
2243
|
-
var defaultManagerOptions = {
|
|
2244
|
-
workerID: "",
|
|
2245
|
-
pollInterval: 1e3,
|
|
2246
|
-
domain: void 0,
|
|
2247
|
-
concurrency: 1
|
|
2248
|
-
};
|
|
2249
|
-
function workerId(options) {
|
|
2250
|
-
return options.workerID ?? import_os.default.hostname();
|
|
2251
|
-
}
|
|
2252
|
-
var TaskManager = class {
|
|
2253
|
-
constructor(client, workers, config = {}) {
|
|
2254
|
-
this.tasks = {};
|
|
2255
|
-
this.workerManagerWorkerOptions = (worker) => {
|
|
2256
|
-
return __spreadProps(__spreadValues({}, this.taskManageOptions), {
|
|
2257
|
-
concurrency: worker.concurrency ?? this.taskManageOptions.concurrency,
|
|
2258
|
-
domain: worker.domain ?? this.taskManageOptions.domain
|
|
2259
|
-
});
|
|
2260
|
-
};
|
|
2261
|
-
this.updatePollingOptions = (options) => {
|
|
2262
|
-
this.workers.forEach((worker) => {
|
|
2263
|
-
const newOptions = __spreadValues(__spreadValues({}, this.workerManagerWorkerOptions(worker)), options);
|
|
2264
|
-
const runners = this.tasks[worker.taskDefName];
|
|
2265
|
-
runners.forEach((runner) => {
|
|
2266
|
-
runner.updateOptions(newOptions);
|
|
2267
|
-
});
|
|
2268
|
-
});
|
|
2269
|
-
};
|
|
2270
|
-
this.startPolling = () => {
|
|
2271
|
-
this.workers.forEach((worker) => {
|
|
2272
|
-
this.tasks[worker.taskDefName] = [];
|
|
2273
|
-
const options = this.workerManagerWorkerOptions(worker);
|
|
2274
|
-
this.logger.debug(`Starting taskDefName=${worker.taskDefName} concurrency=${options.concurrency} domain=${options.domain}`);
|
|
2275
|
-
const runner = new TaskRunner({
|
|
2276
|
-
worker,
|
|
2277
|
-
options,
|
|
2278
|
-
taskResource: this.client.taskResource,
|
|
2279
|
-
logger: this.logger,
|
|
2280
|
-
onError: this.errorHandler
|
|
2281
|
-
});
|
|
2282
|
-
runner.startPolling();
|
|
2283
|
-
this.tasks[worker.taskDefName].push(runner);
|
|
2284
|
-
});
|
|
2285
|
-
};
|
|
2286
|
-
this.stopPolling = () => {
|
|
2287
|
-
for (const taskType in this.tasks) {
|
|
2288
|
-
this.tasks[taskType].forEach((runner) => runner.stopPolling());
|
|
2289
|
-
this.tasks[taskType] = [];
|
|
2290
|
-
}
|
|
2291
|
-
};
|
|
2292
|
-
if (!workers) {
|
|
2293
|
-
throw new Error("No workers supplied to TaskManager. Please pass an array of workers.");
|
|
2294
|
-
}
|
|
2295
|
-
this.client = client;
|
|
2296
|
-
this.logger = config.logger ?? new DefaultLogger();
|
|
2297
|
-
this.errorHandler = config.onError ?? noopErrorHandler;
|
|
2298
|
-
this.workers = workers;
|
|
2299
|
-
const providedOptions = config.options ?? {};
|
|
2300
|
-
this.taskManageOptions = __spreadProps(__spreadValues(__spreadValues({}, defaultManagerOptions), providedOptions), {
|
|
2301
|
-
workerID: workerId(providedOptions)
|
|
2302
|
-
});
|
|
2303
|
-
}
|
|
2304
|
-
};
|
|
2305
|
-
|
|
2306
|
-
// src/core/types.ts
|
|
2307
|
-
var ConductorError = class extends Error {
|
|
2308
|
-
constructor(message, innerError) {
|
|
2309
|
-
super(message);
|
|
2310
|
-
this._trace = innerError;
|
|
2311
|
-
const actualProto = new.target.prototype;
|
|
2312
|
-
if (Object.setPrototypeOf) {
|
|
2313
|
-
Object.setPrototypeOf(this, actualProto);
|
|
2314
|
-
} else {
|
|
2315
|
-
this.__proto__ = actualProto;
|
|
2316
|
-
}
|
|
2317
|
-
}
|
|
2318
|
-
};
|
|
2319
|
-
|
|
2320
|
-
// src/core/helpers.ts
|
|
2321
|
-
var errorMapper = (error) => new ConductorError(error?.body?.message, error);
|
|
2322
|
-
var tryCatchReThrow = (fn) => {
|
|
3456
|
+
// src/core/sdk/workflow.ts
|
|
3457
|
+
var workflow = (name, tasks) => ({
|
|
3458
|
+
name,
|
|
3459
|
+
version: 1,
|
|
3460
|
+
tasks,
|
|
3461
|
+
inputParameters: [],
|
|
3462
|
+
timeoutSeconds: 0
|
|
3463
|
+
});
|
|
3464
|
+
|
|
3465
|
+
// src/orkes/request/fetchCatchDns/DnsResolver.ts
|
|
3466
|
+
var import_dns = require("dns");
|
|
3467
|
+
var DEFAULT_OPTIONS = {
|
|
3468
|
+
logger: noopLogger,
|
|
3469
|
+
resolver: import_dns.promises.resolve4
|
|
3470
|
+
};
|
|
3471
|
+
var dnsResolver = async (host, { resolver = import_dns.promises.resolve4, logger = console } = DEFAULT_OPTIONS) => {
|
|
2323
3472
|
try {
|
|
2324
|
-
|
|
2325
|
-
|
|
2326
|
-
|
|
3473
|
+
const addresses = await resolver(host);
|
|
3474
|
+
if (addresses.length > 0)
|
|
3475
|
+
return addresses[0];
|
|
3476
|
+
} catch (e) {
|
|
3477
|
+
logger.error("Could not resolve host: " + host + " error: " + e);
|
|
2327
3478
|
}
|
|
3479
|
+
return void 0;
|
|
2328
3480
|
};
|
|
2329
3481
|
|
|
2330
|
-
// src/
|
|
2331
|
-
var
|
|
2332
|
-
|
|
2333
|
-
|
|
2334
|
-
this.
|
|
2335
|
-
}
|
|
2336
|
-
|
|
2337
|
-
|
|
3482
|
+
// src/orkes/request/fetchCatchDns/DnsCache.ts
|
|
3483
|
+
var DnsCacheResolver = class {
|
|
3484
|
+
constructor({ initialCache = /* @__PURE__ */ new Map() } = {}) {
|
|
3485
|
+
this._cache = /* @__PURE__ */ new Map();
|
|
3486
|
+
this._cache = initialCache;
|
|
3487
|
+
}
|
|
3488
|
+
async resolve(host) {
|
|
3489
|
+
const cachedIp = this._cache.get(host);
|
|
3490
|
+
if (cachedIp) {
|
|
3491
|
+
return cachedIp;
|
|
3492
|
+
}
|
|
3493
|
+
const ip = await dnsResolver(host);
|
|
3494
|
+
if (ip != void 0) {
|
|
3495
|
+
this._cache.set(host, ip);
|
|
3496
|
+
}
|
|
3497
|
+
return ip;
|
|
2338
3498
|
}
|
|
2339
|
-
|
|
2340
|
-
|
|
3499
|
+
clearCache() {
|
|
3500
|
+
this._cache.clear();
|
|
2341
3501
|
}
|
|
2342
|
-
|
|
2343
|
-
return
|
|
3502
|
+
get cache() {
|
|
3503
|
+
return this._cache;
|
|
2344
3504
|
}
|
|
2345
|
-
|
|
2346
|
-
|
|
3505
|
+
};
|
|
3506
|
+
|
|
3507
|
+
// src/orkes/request/fetchCatchDns/fetchCatchDns.ts
|
|
3508
|
+
var import_net = require("net");
|
|
3509
|
+
var isEmpty = (value) => {
|
|
3510
|
+
return value === void 0 || value.trim().length === 0;
|
|
3511
|
+
};
|
|
3512
|
+
var toMaybeUrl = (originalUrl, modifiedParams) => {
|
|
3513
|
+
const urlToHit = new URL(originalUrl.toString());
|
|
3514
|
+
urlToHit.host = isEmpty(modifiedParams.port) ? `${modifiedParams.host}:${modifiedParams.port}` : modifiedParams.host;
|
|
3515
|
+
return urlToHit;
|
|
3516
|
+
};
|
|
3517
|
+
var DEFAULT_OPTIONS2 = {
|
|
3518
|
+
dnsCache: new DnsCacheResolver(),
|
|
3519
|
+
headerFactory: (headers) => new Headers(headers || {})
|
|
3520
|
+
};
|
|
3521
|
+
var fetchCatchDns = (fetch2, {
|
|
3522
|
+
dnsCache = new DnsCacheResolver(),
|
|
3523
|
+
headerFactory = (headers) => new Headers(headers || {})
|
|
3524
|
+
} = DEFAULT_OPTIONS2) => {
|
|
3525
|
+
const fetchWithDns = async (input, options) => {
|
|
3526
|
+
const parsedUrl = new URL(input.toString());
|
|
3527
|
+
const { hostname, host, port } = parsedUrl;
|
|
3528
|
+
if ((0, import_net.isIP)(hostname)) {
|
|
3529
|
+
return await fetch2(input, options);
|
|
3530
|
+
}
|
|
3531
|
+
const maybeTargetIp = await dnsCache.resolve(hostname);
|
|
3532
|
+
if (isEmpty(maybeTargetIp)) {
|
|
3533
|
+
return await fetch2(input, options);
|
|
3534
|
+
}
|
|
3535
|
+
const target = toMaybeUrl(input, {
|
|
3536
|
+
...parsedUrl,
|
|
3537
|
+
host: maybeTargetIp,
|
|
3538
|
+
port
|
|
3539
|
+
});
|
|
3540
|
+
const headersOverride = headerFactory(options?.headers ?? {});
|
|
3541
|
+
if (!headersOverride.has("Host")) {
|
|
3542
|
+
headersOverride.set("Host", host);
|
|
3543
|
+
}
|
|
3544
|
+
const optionsOverride = {
|
|
3545
|
+
...options,
|
|
3546
|
+
headers: headersOverride
|
|
3547
|
+
};
|
|
3548
|
+
const res = await fetch2(target.toString(), optionsOverride);
|
|
3549
|
+
return res;
|
|
3550
|
+
};
|
|
3551
|
+
return fetchWithDns;
|
|
3552
|
+
};
|
|
3553
|
+
|
|
3554
|
+
// src/orkes/request/request.ts
|
|
3555
|
+
var isDefined2 = (value) => {
|
|
3556
|
+
return value !== void 0 && value !== null;
|
|
3557
|
+
};
|
|
3558
|
+
var isString2 = (value) => {
|
|
3559
|
+
return typeof value === "string";
|
|
3560
|
+
};
|
|
3561
|
+
var isStringWithValue2 = (value) => {
|
|
3562
|
+
return isString2(value) && value !== "";
|
|
3563
|
+
};
|
|
3564
|
+
var isBlob2 = (value) => {
|
|
3565
|
+
return typeof value === "object" && typeof value.type === "string" && typeof value.stream === "function" && typeof value.arrayBuffer === "function" && typeof value.constructor === "function" && typeof value.constructor.name === "string" && /^(Blob|File)$/.test(value.constructor.name) && /^(Blob|File)$/.test(value[Symbol.toStringTag]);
|
|
3566
|
+
};
|
|
3567
|
+
var isFormData2 = (value) => {
|
|
3568
|
+
return value instanceof FormData;
|
|
3569
|
+
};
|
|
3570
|
+
var base642 = (str) => {
|
|
3571
|
+
try {
|
|
3572
|
+
return btoa(str);
|
|
3573
|
+
} catch (err) {
|
|
3574
|
+
return Buffer.from(str).toString("base64");
|
|
2347
3575
|
}
|
|
2348
|
-
|
|
2349
|
-
|
|
2350
|
-
|
|
2351
|
-
|
|
2352
|
-
}
|
|
2353
|
-
|
|
2354
|
-
|
|
3576
|
+
};
|
|
3577
|
+
var getQueryString2 = (params) => {
|
|
3578
|
+
const qs = [];
|
|
3579
|
+
const append = (key, value) => {
|
|
3580
|
+
qs.push(`${encodeURIComponent(key)}=${encodeURIComponent(String(value))}`);
|
|
3581
|
+
};
|
|
3582
|
+
const process = (key, value) => {
|
|
3583
|
+
if (isDefined2(value)) {
|
|
3584
|
+
if (Array.isArray(value)) {
|
|
3585
|
+
value.forEach((v) => {
|
|
3586
|
+
process(key, v);
|
|
3587
|
+
});
|
|
3588
|
+
} else if (typeof value === "object") {
|
|
3589
|
+
Object.entries(value).forEach(([k, v]) => {
|
|
3590
|
+
process(`${key}[${k}]`, v);
|
|
3591
|
+
});
|
|
3592
|
+
} else {
|
|
3593
|
+
append(key, value);
|
|
2355
3594
|
}
|
|
2356
3595
|
}
|
|
2357
|
-
|
|
2358
|
-
|
|
2359
|
-
|
|
2360
|
-
|
|
2361
|
-
|
|
2362
|
-
|
|
2363
|
-
pause(workflowInstanceId) {
|
|
2364
|
-
return tryCatchReThrow(() => this._client.workflowResource.pauseWorkflow(workflowInstanceId));
|
|
2365
|
-
}
|
|
2366
|
-
reRun(workflowInstanceId, rerunWorkflowRequest = {}) {
|
|
2367
|
-
return tryCatchReThrow(() => this._client.workflowResource.rerun(workflowInstanceId, rerunWorkflowRequest));
|
|
2368
|
-
}
|
|
2369
|
-
restart(workflowInstanceId, useLatestDefinitions) {
|
|
2370
|
-
return tryCatchReThrow(() => this._client.workflowResource.restart1(workflowInstanceId, useLatestDefinitions));
|
|
2371
|
-
}
|
|
2372
|
-
resume(workflowInstanceId) {
|
|
2373
|
-
return tryCatchReThrow(() => this._client.workflowResource.resumeWorkflow(workflowInstanceId));
|
|
2374
|
-
}
|
|
2375
|
-
retry(workflowInstanceId, resumeSubworkflowTasks) {
|
|
2376
|
-
return tryCatchReThrow(() => this._client.workflowResource.retry1(workflowInstanceId, resumeSubworkflowTasks));
|
|
2377
|
-
}
|
|
2378
|
-
search(start, size, query, freeText, sort = "", skipCache = false) {
|
|
2379
|
-
const queryId = void 0;
|
|
2380
|
-
return tryCatchReThrow(() => this._client.workflowResource.search1(queryId, start, size, sort, freeText, query, skipCache));
|
|
2381
|
-
}
|
|
2382
|
-
skipTasksFromWorkflow(workflowInstanceId, taskReferenceName, skipTaskRequest) {
|
|
2383
|
-
return tryCatchReThrow(() => this._client.workflowResource.skipTaskFromWorkflow(workflowInstanceId, taskReferenceName, skipTaskRequest));
|
|
3596
|
+
};
|
|
3597
|
+
Object.entries(params).forEach(([key, value]) => {
|
|
3598
|
+
process(key, value);
|
|
3599
|
+
});
|
|
3600
|
+
if (qs.length > 0) {
|
|
3601
|
+
return `?${qs.join("&")}`;
|
|
2384
3602
|
}
|
|
2385
|
-
|
|
2386
|
-
|
|
3603
|
+
return "";
|
|
3604
|
+
};
|
|
3605
|
+
var getUrl2 = (config, options) => {
|
|
3606
|
+
const encoder = config.ENCODE_PATH || encodeURI;
|
|
3607
|
+
const path = options.url.replace("{api-version}", config.VERSION).replace(/{(.*?)}/g, (substring, group) => {
|
|
3608
|
+
if (options.path?.hasOwnProperty(group)) {
|
|
3609
|
+
return encoder(String(options.path[group]));
|
|
3610
|
+
}
|
|
3611
|
+
return substring;
|
|
3612
|
+
});
|
|
3613
|
+
const url = `${config.BASE}${path}`;
|
|
3614
|
+
if (options.query) {
|
|
3615
|
+
return `${url}${getQueryString2(options.query)}`;
|
|
2387
3616
|
}
|
|
2388
|
-
|
|
2389
|
-
|
|
2390
|
-
|
|
2391
|
-
|
|
2392
|
-
|
|
3617
|
+
return url;
|
|
3618
|
+
};
|
|
3619
|
+
var getFormData2 = (options) => {
|
|
3620
|
+
if (options.formData) {
|
|
3621
|
+
const formData = new FormData();
|
|
3622
|
+
const process = (key, value) => {
|
|
3623
|
+
if (isString2(value) || isBlob2(value)) {
|
|
3624
|
+
formData.append(key, value);
|
|
3625
|
+
} else {
|
|
3626
|
+
formData.append(key, JSON.stringify(value));
|
|
3627
|
+
}
|
|
2393
3628
|
};
|
|
2394
|
-
|
|
2395
|
-
|
|
2396
|
-
|
|
2397
|
-
|
|
2398
|
-
|
|
2399
|
-
|
|
3629
|
+
Object.entries(options.formData).filter(([_, value]) => isDefined2(value)).forEach(([key, value]) => {
|
|
3630
|
+
if (Array.isArray(value)) {
|
|
3631
|
+
value.forEach((v) => process(key, v));
|
|
3632
|
+
} else {
|
|
3633
|
+
process(key, value);
|
|
3634
|
+
}
|
|
3635
|
+
});
|
|
3636
|
+
return formData;
|
|
2400
3637
|
}
|
|
2401
|
-
|
|
2402
|
-
|
|
3638
|
+
return void 0;
|
|
3639
|
+
};
|
|
3640
|
+
var resolve2 = async (options, resolver) => {
|
|
3641
|
+
if (typeof resolver === "function") {
|
|
3642
|
+
return resolver(options);
|
|
2403
3643
|
}
|
|
3644
|
+
return resolver;
|
|
2404
3645
|
};
|
|
2405
|
-
|
|
2406
|
-
|
|
2407
|
-
|
|
2408
|
-
|
|
2409
|
-
|
|
3646
|
+
var getHeaders2 = async (config, options) => {
|
|
3647
|
+
const token = await resolve2(options, config.TOKEN);
|
|
3648
|
+
const username = await resolve2(options, config.USERNAME);
|
|
3649
|
+
const password = await resolve2(options, config.PASSWORD);
|
|
3650
|
+
const additionalHeaders = await resolve2(options, config.HEADERS);
|
|
3651
|
+
const headers = Object.entries({
|
|
3652
|
+
Accept: "application/json",
|
|
3653
|
+
...additionalHeaders,
|
|
3654
|
+
...options.headers
|
|
3655
|
+
}).filter(([_, value]) => isDefined2(value)).reduce(
|
|
3656
|
+
(headers2, [key, value]) => ({
|
|
3657
|
+
...headers2,
|
|
3658
|
+
[key]: String(value)
|
|
3659
|
+
}),
|
|
3660
|
+
{}
|
|
3661
|
+
);
|
|
3662
|
+
if (isStringWithValue2(token)) {
|
|
3663
|
+
headers["X-AUTHORIZATION"] = token;
|
|
2410
3664
|
}
|
|
2411
|
-
|
|
2412
|
-
const
|
|
2413
|
-
|
|
2414
|
-
return response.results;
|
|
2415
|
-
}
|
|
2416
|
-
return [];
|
|
3665
|
+
if (isStringWithValue2(username) && isStringWithValue2(password)) {
|
|
3666
|
+
const credentials = base642(`${username}:${password}`);
|
|
3667
|
+
headers["Authorization"] = `Basic ${credentials}`;
|
|
2417
3668
|
}
|
|
2418
|
-
|
|
2419
|
-
|
|
3669
|
+
if (options.body) {
|
|
3670
|
+
if (options.mediaType) {
|
|
3671
|
+
headers["Content-Type"] = options.mediaType;
|
|
3672
|
+
} else if (isBlob2(options.body)) {
|
|
3673
|
+
headers["Content-Type"] = "application/octet-stream";
|
|
3674
|
+
} else if (isString2(options.body)) {
|
|
3675
|
+
headers["Content-Type"] = "text/plain";
|
|
3676
|
+
} else if (!isFormData2(options.body)) {
|
|
3677
|
+
headers["Content-Type"] = "application/json";
|
|
3678
|
+
}
|
|
2420
3679
|
}
|
|
2421
|
-
|
|
2422
|
-
|
|
2423
|
-
|
|
2424
|
-
|
|
2425
|
-
|
|
3680
|
+
return new Headers(headers);
|
|
3681
|
+
};
|
|
3682
|
+
var getRequestBody2 = (options) => {
|
|
3683
|
+
if (options.body) {
|
|
3684
|
+
if (options.mediaType?.includes("/json")) {
|
|
3685
|
+
return JSON.stringify(options.body);
|
|
3686
|
+
} else if (isString2(options.body) || isBlob2(options.body) || isFormData2(options.body)) {
|
|
3687
|
+
return options.body;
|
|
3688
|
+
} else {
|
|
3689
|
+
return JSON.stringify(options.body);
|
|
2426
3690
|
}
|
|
2427
3691
|
}
|
|
2428
|
-
|
|
2429
|
-
|
|
2430
|
-
|
|
2431
|
-
|
|
2432
|
-
|
|
3692
|
+
return void 0;
|
|
3693
|
+
};
|
|
3694
|
+
var sendRequest2 = async (options, url, body, formData, headers, onCancel, fetchFn = fetch) => {
|
|
3695
|
+
const controller = new AbortController();
|
|
3696
|
+
const request3 = {
|
|
3697
|
+
headers,
|
|
3698
|
+
method: options.method,
|
|
3699
|
+
body: body ?? formData,
|
|
3700
|
+
signal: controller.signal
|
|
3701
|
+
};
|
|
3702
|
+
onCancel(() => controller.abort());
|
|
3703
|
+
return await fetchFn(url, request3);
|
|
3704
|
+
};
|
|
3705
|
+
var getResponseHeader2 = (response, responseHeader) => {
|
|
3706
|
+
if (responseHeader) {
|
|
3707
|
+
const content = response.headers.get(responseHeader);
|
|
3708
|
+
if (isString2(content)) {
|
|
3709
|
+
return content;
|
|
2433
3710
|
}
|
|
2434
3711
|
}
|
|
2435
|
-
|
|
3712
|
+
return void 0;
|
|
3713
|
+
};
|
|
3714
|
+
var getResponseBody2 = async (response) => {
|
|
3715
|
+
if (response.status !== 204) {
|
|
2436
3716
|
try {
|
|
2437
|
-
|
|
3717
|
+
const contentType = response.headers.get("Content-Type");
|
|
3718
|
+
if (contentType) {
|
|
3719
|
+
const isJSON = contentType.toLowerCase().startsWith("application/json");
|
|
3720
|
+
if (isJSON) {
|
|
3721
|
+
return await response.json();
|
|
3722
|
+
} else {
|
|
3723
|
+
return await response.text();
|
|
3724
|
+
}
|
|
3725
|
+
}
|
|
2438
3726
|
} catch (error) {
|
|
2439
|
-
|
|
3727
|
+
console.error(error);
|
|
2440
3728
|
}
|
|
2441
3729
|
}
|
|
2442
|
-
|
|
2443
|
-
|
|
3730
|
+
return void 0;
|
|
3731
|
+
};
|
|
3732
|
+
var catchErrorCodes2 = (options, result) => {
|
|
3733
|
+
const errors = {
|
|
3734
|
+
400: "Bad Request",
|
|
3735
|
+
401: "Unauthorized",
|
|
3736
|
+
403: "Forbidden",
|
|
3737
|
+
404: "Not Found",
|
|
3738
|
+
500: "Internal Server Error",
|
|
3739
|
+
502: "Bad Gateway",
|
|
3740
|
+
503: "Service Unavailable",
|
|
3741
|
+
...options.errors
|
|
3742
|
+
};
|
|
3743
|
+
const error = errors[result.status];
|
|
3744
|
+
if (error) {
|
|
3745
|
+
throw new ApiError(options, result, error);
|
|
2444
3746
|
}
|
|
2445
|
-
|
|
2446
|
-
|
|
2447
|
-
await this._client.humanTask.updateTaskOutput(taskId, requestBody, false);
|
|
2448
|
-
} catch (error) {
|
|
2449
|
-
throw errorMapper(error);
|
|
2450
|
-
}
|
|
3747
|
+
if (!result.ok) {
|
|
3748
|
+
throw new ApiError(options, result, "Generic Error");
|
|
2451
3749
|
}
|
|
2452
|
-
|
|
3750
|
+
};
|
|
3751
|
+
var request2 = (config, options, fetchFn = fetch) => {
|
|
3752
|
+
return new CancelablePromise(async (resolve3, reject, onCancel) => {
|
|
2453
3753
|
try {
|
|
2454
|
-
|
|
3754
|
+
const url = getUrl2(config, options);
|
|
3755
|
+
const formData = getFormData2(options);
|
|
3756
|
+
const body = getRequestBody2(options);
|
|
3757
|
+
const headers = await getHeaders2(config, options);
|
|
3758
|
+
if (!onCancel.isCancelled) {
|
|
3759
|
+
const response = await sendRequest2(
|
|
3760
|
+
options,
|
|
3761
|
+
url,
|
|
3762
|
+
body,
|
|
3763
|
+
formData,
|
|
3764
|
+
headers,
|
|
3765
|
+
onCancel,
|
|
3766
|
+
fetchFn
|
|
3767
|
+
);
|
|
3768
|
+
const responseBody = await getResponseBody2(response);
|
|
3769
|
+
const responseHeader = getResponseHeader2(
|
|
3770
|
+
response,
|
|
3771
|
+
options.responseHeader
|
|
3772
|
+
);
|
|
3773
|
+
const result = {
|
|
3774
|
+
url,
|
|
3775
|
+
ok: response.ok,
|
|
3776
|
+
status: response.status,
|
|
3777
|
+
statusText: response.statusText,
|
|
3778
|
+
body: responseHeader ?? responseBody
|
|
3779
|
+
};
|
|
3780
|
+
catchErrorCodes2(options, result);
|
|
3781
|
+
resolve3(result.body);
|
|
3782
|
+
}
|
|
2455
3783
|
} catch (error) {
|
|
2456
|
-
|
|
3784
|
+
reject(error);
|
|
2457
3785
|
}
|
|
2458
|
-
}
|
|
3786
|
+
});
|
|
3787
|
+
};
|
|
3788
|
+
|
|
3789
|
+
// src/orkes/BaseOrkesConductorClient.ts
|
|
3790
|
+
var defaultRequestHandler2 = (request3, config, options) => request3(config, options);
|
|
3791
|
+
var baseOrkesConductorClient = (fetchFn, baseRequestHandler = defaultRequestHandler2) => {
|
|
3792
|
+
return async (config, requestHandler = baseRequestHandler) => {
|
|
3793
|
+
if (config?.keySecret != null && config?.keyId != null) {
|
|
3794
|
+
const { serverUrl, keyId, keySecret } = config;
|
|
3795
|
+
const tokenUrl = `${serverUrl}/token`;
|
|
3796
|
+
const res = await fetchFn(tokenUrl, {
|
|
3797
|
+
headers: {
|
|
3798
|
+
"Content-Type": "application/json",
|
|
3799
|
+
Accept: "application/json"
|
|
3800
|
+
},
|
|
3801
|
+
body: JSON.stringify({ keyId, keySecret }),
|
|
3802
|
+
method: "POST"
|
|
3803
|
+
});
|
|
3804
|
+
const { token } = await res.json();
|
|
3805
|
+
return new ConductorClient({ ...config, TOKEN: token }, requestHandler);
|
|
3806
|
+
} else {
|
|
3807
|
+
return new ConductorClient(config, requestHandler);
|
|
3808
|
+
}
|
|
3809
|
+
};
|
|
2459
3810
|
};
|
|
3811
|
+
|
|
3812
|
+
// src/orkes/OrkesConductorClient.ts
|
|
3813
|
+
var fetchCache = fetchCatchDns(fetch);
|
|
3814
|
+
var defaultRequestHandler3 = (__request, config, options) => request2(config, options, fetchCache);
|
|
3815
|
+
var orkesConductorClient = baseOrkesConductorClient(
|
|
3816
|
+
fetchCache,
|
|
3817
|
+
defaultRequestHandler3
|
|
3818
|
+
);
|
|
2460
3819
|
// Annotate the CommonJS export names for ESM import in node:
|
|
2461
3820
|
0 && (module.exports = {
|
|
2462
3821
|
ApiError,
|
|
@@ -2466,6 +3825,7 @@ var HumanExecutor = class {
|
|
|
2466
3825
|
ConductorClient,
|
|
2467
3826
|
ConductorError,
|
|
2468
3827
|
DefaultLogger,
|
|
3828
|
+
DnsCacheResolver,
|
|
2469
3829
|
EventResourceService,
|
|
2470
3830
|
HealthCheckResourceService,
|
|
2471
3831
|
HumanExecutor,
|
|
@@ -2479,10 +3839,12 @@ var HumanExecutor = class {
|
|
|
2479
3839
|
WorkflowBulkResourceService,
|
|
2480
3840
|
WorkflowExecutor,
|
|
2481
3841
|
WorkflowResourceService,
|
|
3842
|
+
baseOrkesConductorClient,
|
|
2482
3843
|
conductorEventTask,
|
|
2483
3844
|
doWhileTask,
|
|
2484
3845
|
dynamicForkTask,
|
|
2485
3846
|
eventTask,
|
|
3847
|
+
fetchCatchDns,
|
|
2486
3848
|
forkTask,
|
|
2487
3849
|
forkTaskJoin,
|
|
2488
3850
|
generate,
|
|
@@ -2507,7 +3869,9 @@ var HumanExecutor = class {
|
|
|
2507
3869
|
kafkaPublishTask,
|
|
2508
3870
|
newLoopTask,
|
|
2509
3871
|
noopErrorHandler,
|
|
3872
|
+
noopLogger,
|
|
2510
3873
|
orkesConductorClient,
|
|
3874
|
+
request,
|
|
2511
3875
|
setVariableTask,
|
|
2512
3876
|
simpleTask,
|
|
2513
3877
|
sqsEventTask,
|
|
@@ -2515,6 +3879,7 @@ var HumanExecutor = class {
|
|
|
2515
3879
|
switchTask,
|
|
2516
3880
|
taskGenMapper,
|
|
2517
3881
|
terminateTask,
|
|
3882
|
+
toMaybeUrl,
|
|
2518
3883
|
waitTaskDuration,
|
|
2519
3884
|
waitTaskUntil,
|
|
2520
3885
|
workflow
|