acady-task-worker 2.3.1 → 2.4.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.
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
@@ -1 +1 @@
1
- {"version":3,"file":"aws-sf-connector.js","sourceRoot":"","sources":["../../src/connectors/aws-sf-connector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAO6B;AAE7B;IAAA;IAgEA,CAAC;IA9DuB,8BAAe,GAAnC,UAAoC,SAAiB,EAAE,MAAW;;;;gBACxD,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO,GAAG,IAAI,mCAAsB,CAAC;oBACvC,SAAS,WAAA;oBACT,MAAM,QAAA;iBACT,CAAC,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEmB,8BAAe,GAAnC,UAAoC,SAAiB,EAAE,KAAa,EAAE,KAAa;;;;gBACzE,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO,GAAG,IAAI,mCAAsB,CAAC;oBACvC,SAAS,WAAA;oBACT,KAAK,OAAA;oBACL,KAAK,OAAA;iBACR,CAAC,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEmB,gCAAiB,GAArC,UAAsC,SAAiB;;;;gBAC7C,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO,GAAG,IAAI,qCAAwB,CAAC;oBACzC,SAAS,WAAA;iBACZ,CAAC,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEmB,6BAAc,GAAlC,UAAmC,eAAuB,EAAE,IAAY,EAAE,KAAU;;;;;;wBAC1E,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;wBACtC,OAAO,GAAG,IAAI,kCAAqB,CAAC;4BACtC,eAAe,iBAAA;4BACf,IAAI,MAAA;4BACJ,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;yBAC/B,CAAC,CAAC;wBACc,qBAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAA;;wBAArC,QAAQ,GAAG,SAA0B;wBAC3C,sBAAO,QAAQ,CAAC,YAAY,EAAC;;;;KAChC;IAEc,0BAAW,GAA1B;QACI,IAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAC/B,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;gBAC1C,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;aAC/D,CAAC;SACL;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE;YACxB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;SAC1C;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAC/B,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAA2B;gBACpD,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;gBAC5D,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;aAC9C,CAAC;SACL;QAED,OAAO,IAAI,sBAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACL,qBAAC;AAAD,CAAC,AAhED,IAgEC"}
1
+ {"version":3,"file":"aws-sf-connector.js","sourceRoot":"","sources":["../../src/connectors/aws-sf-connector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAO6B;AAE7B;IAAA;IAgEA,CAAC;IA9DuB,8BAAe,GAAnC,UAAoC,SAAiB,EAAE,MAAW;;;;gBACxD,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO,GAAG,IAAI,mCAAsB,CAAC;oBACvC,SAAS,WAAA;oBACT,MAAM,QAAA;iBACT,CAAC,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEmB,8BAAe,GAAnC,UAAoC,SAAiB,EAAE,KAAa,EAAE,KAAa;;;;gBACzE,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO,GAAG,IAAI,mCAAsB,CAAC;oBACvC,SAAS,WAAA;oBACT,KAAK,OAAA;oBACL,KAAK,OAAA;iBACR,CAAC,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEmB,gCAAiB,GAArC,UAAsC,SAAiB;;;;gBAC7C,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;gBACtC,OAAO,GAAG,IAAI,qCAAwB,CAAC;oBACzC,SAAS,WAAA;iBACZ,CAAC,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEmB,6BAAc,GAAlC,UAAmC,eAAuB,EAAE,IAAY,EAAE,KAAU;;;;;;wBAC1E,MAAM,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;wBACtC,OAAO,GAAG,IAAI,kCAAqB,CAAC;4BACtC,eAAe,iBAAA;4BACf,IAAI,MAAA;4BACJ,KAAK,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;yBAC/B,CAAC,CAAC;wBACc,qBAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAA;;wBAArC,QAAQ,GAAG,SAA0B;wBAC3C,sBAAO,QAAQ,CAAC,YAAY,EAAC;;;;KAChC;IAEc,0BAAW,GAA1B;QACI,IAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAChC,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;gBAC1C,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;aAC/D,CAAC;QACN,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACzB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAC3C,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAChC,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAA2B;gBACpD,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;gBAC5D,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;aAC9C,CAAC;QACN,CAAC;QAED,OAAO,IAAI,sBAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACL,qBAAC;AAAD,CAAC,AAhED,IAgEC"}
@@ -20,8 +20,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
20
20
  });
21
21
  };
22
22
  var __generator = (this && this.__generator) || function (thisArg, body) {
23
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
24
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
23
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
24
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
25
25
  function verb(n) { return function (v) { return step([n, v]); }; }
26
26
  function step(op) {
27
27
  if (f) throw new TypeError("Generator is already executing.");
@@ -1 +1 @@
1
- {"version":3,"file":"aws-sqs-connector.js","sourceRoot":"","sources":["../../src/connectors/aws-sqs-connector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAK6B;AAE7B;IAAA;IAuCA,CAAC;IArCuB,2BAAW,GAA/B,UAAgC,MAAc,EAAE,WAAmB,EAAE,OAAgB,EAAE,eAAwB,EAAE,MAAY;;;;gBACnH,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;gBACvC,OAAO,GAAG,IAAI,+BAAkB,YAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,OAAO,EACvB,sBAAsB,EAAE,eAAe,IACpC,MAAM,EACX,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEc,2BAAW,GAA1B;QACI,IAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAC/B,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;gBAC1C,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;aAC/D,CAAC;SACL;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE;YACxB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;SAC1C;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE;YAC/B,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAA2B;gBACpD,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;gBAC5D,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;aAC9C,CAAC;SAEL;QAED,OAAO,IAAI,sBAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACL,sBAAC;AAAD,CAAC,AAvCD,IAuCC"}
1
+ {"version":3,"file":"aws-sqs-connector.js","sourceRoot":"","sources":["../../src/connectors/aws-sqs-connector.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kDAK6B;AAE7B;IAAA;IAuCA,CAAC;IArCuB,2BAAW,GAA/B,UAAgC,MAAc,EAAE,WAAmB,EAAE,OAAgB,EAAE,eAAwB,EAAE,MAAY;;;;gBACnH,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;gBACvC,OAAO,GAAG,IAAI,+BAAkB,YAClC,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,WAAW,EACxB,cAAc,EAAE,OAAO,EACvB,sBAAsB,EAAE,eAAe,IACpC,MAAM,EACX,CAAC;gBACH,sBAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAC;;;KAC/B;IAEc,2BAAW,GAA1B;QACI,IAAM,MAAM,GAAoB,EAAE,CAAC;QAEnC,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAChC,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;gBAC1C,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;aAC/D,CAAC;QACN,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC;YACzB,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC;QAC3C,CAAC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,iBAAiB,EAAE,CAAC;YAChC,MAAM,CAAC,WAAW,GAAG;gBACjB,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAA2B;gBACpD,eAAe,EAAE,OAAO,CAAC,GAAG,CAAC,qBAA+B;gBAC5D,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;aAC9C,CAAC;QAEN,CAAC;QAED,OAAO,IAAI,sBAAS,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IACL,sBAAC;AAAD,CAAC,AAvCD,IAuCC"}
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mFAA2D;AAInD,yBAJD,0BAAc,CAIC;AAHtB,+DAAyC;AAGjB,eAHjB,cAAI,CAGiB;AAF5B,kEAAgE;AAElC,8FAFrB,8BAAa,OAEqB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,mFAA2D;AAInD,yBAJD,0BAAc,CAIC;AAHtB,+DAAyC;AAGjB,eAHjB,cAAI,CAGiB;AAF5B,kEAA8D;AAEhC,8FAFtB,8BAAa,OAEsB"}
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
@@ -0,0 +1,13 @@
1
+ import { DurableContext } from "@aws/durable-execution-sdk-js";
2
+ export declare abstract class AbstractTaskContext {
3
+ taskToken: string | undefined;
4
+ sqsReceiptHandle?: string;
5
+ debug: boolean;
6
+ durableContext: DurableContext | undefined;
7
+ taskName: string | undefined;
8
+ taskInput: any | undefined;
9
+ reject(errorCode: string, errorCause: string): Promise<void>;
10
+ resolve(output: any): Promise<void>;
11
+ heartbeat(): Promise<void>;
12
+ log(message: string, ...data: any): Promise<void>;
13
+ }
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ Object.defineProperty(exports, "__esModule", { value: true });
51
+ exports.AbstractTaskContext = void 0;
52
+ var aws_sf_connector_1 = __importDefault(require("../connectors/aws-sf-connector"));
53
+ var AbstractTaskContext = /** @class */ (function () {
54
+ function AbstractTaskContext() {
55
+ this.debug = false;
56
+ }
57
+ AbstractTaskContext.prototype.reject = function (errorCode, errorCause) {
58
+ return __awaiter(this, void 0, void 0, function () {
59
+ return __generator(this, function (_a) {
60
+ switch (_a.label) {
61
+ case 0:
62
+ if (!this.taskToken) return [3 /*break*/, 2];
63
+ return [4 /*yield*/, aws_sf_connector_1.default.sendTaskFailure(this.taskToken, errorCode, errorCause)];
64
+ case 1:
65
+ _a.sent();
66
+ _a.label = 2;
67
+ case 2:
68
+ if (this.sqsReceiptHandle) // Throw error to signal issue
69
+ throw new Error(errorCause);
70
+ return [2 /*return*/];
71
+ }
72
+ });
73
+ });
74
+ };
75
+ AbstractTaskContext.prototype.resolve = function (output) {
76
+ return __awaiter(this, void 0, void 0, function () {
77
+ return __generator(this, function (_a) {
78
+ switch (_a.label) {
79
+ case 0:
80
+ if (!this.taskToken) return [3 /*break*/, 2];
81
+ return [4 /*yield*/, aws_sf_connector_1.default.sendTaskSuccess(this.taskToken, JSON.stringify(output))];
82
+ case 1:
83
+ _a.sent();
84
+ _a.label = 2;
85
+ case 2: return [2 /*return*/];
86
+ }
87
+ });
88
+ });
89
+ };
90
+ AbstractTaskContext.prototype.heartbeat = function () {
91
+ return __awaiter(this, void 0, void 0, function () {
92
+ return __generator(this, function (_a) {
93
+ switch (_a.label) {
94
+ case 0:
95
+ if (!this.taskToken) return [3 /*break*/, 2];
96
+ return [4 /*yield*/, aws_sf_connector_1.default.sendTaskHeartbeat(this.taskToken)];
97
+ case 1:
98
+ _a.sent();
99
+ _a.label = 2;
100
+ case 2: return [2 /*return*/];
101
+ }
102
+ });
103
+ });
104
+ };
105
+ AbstractTaskContext.prototype.log = function (message) {
106
+ var data = [];
107
+ for (var _i = 1; _i < arguments.length; _i++) {
108
+ data[_i - 1] = arguments[_i];
109
+ }
110
+ return __awaiter(this, void 0, void 0, function () {
111
+ return __generator(this, function (_a) {
112
+ console.log.apply(console, __spreadArray(["[".concat(this.taskName, "] ").concat(message)], data, false));
113
+ return [2 /*return*/];
114
+ });
115
+ });
116
+ };
117
+ return AbstractTaskContext;
118
+ }());
119
+ exports.AbstractTaskContext = AbstractTaskContext;
120
+ //# sourceMappingURL=abstract-task-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstract-task-context.js","sourceRoot":"","sources":["../../src/task-processor/abstract-task-context.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,oFAA4D;AAG5D;IAAA;QAGS,UAAK,GAAY,KAAK,CAAC;IA4BhC,CAAC;IArBc,oCAAM,GAAnB,UAAoB,SAAiB,EAAE,UAAkB;;;;;6BACnD,IAAI,CAAC,SAAS,EAAd,wBAAc;wBAChB,qBAAM,0BAAc,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,EAAA;;wBAA3E,SAA2E,CAAC;;;wBAE9E,IAAI,IAAI,CAAC,gBAAgB,EAAE,8BAA8B;4BACvD,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;;;;;KAC/B;IAEY,qCAAO,GAApB,UAAqB,MAAW;;;;;6BAC1B,IAAI,CAAC,SAAS,EAAd,wBAAc;wBAChB,qBAAM,0BAAc,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAA;;wBAA5E,SAA4E,CAAC;;;;;;KAChF;IAEY,uCAAS,GAAtB;;;;;6BACM,IAAI,CAAC,SAAS,EAAd,wBAAc;wBAChB,qBAAM,0BAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAA;;wBAAtD,SAAsD,CAAC;;;;;;KAC1D;IAEY,iCAAG,GAAhB,UAAiB,OAAe;QAAE,cAAY;aAAZ,UAAY,EAAZ,qBAAY,EAAZ,IAAY;YAAZ,6BAAY;;;;gBAC5C,OAAO,CAAC,GAAG,OAAX,OAAO,iBAAK,WAAI,IAAI,CAAC,QAAQ,eAAK,OAAO,CAAE,GAAK,IAAI,UAAE;;;;KACvD;IACH,0BAAC;AAAD,CAAC,AA/BD,IA+BC;AA/BqB,kDAAmB"}
@@ -1,11 +1,10 @@
1
+ import { AbstractTaskContext } from "./abstract-task-context";
1
2
  import Task from "./task";
3
+ import { DurableContext } from "@aws/durable-execution-sdk-js";
2
4
  export declare abstract class AbstractTaskProcessor {
3
5
  protected taskMap: Map<string, typeof Task>;
4
- protected taskToken: string | undefined;
5
- protected sqsReceiptHandle?: string;
6
- debug: boolean;
6
+ protected taskContext: AbstractTaskContext;
7
+ constructor(taskContext: AbstractTaskContext);
7
8
  registerTask(taskName: string, taskClass: typeof Task): void;
8
- reject(errorCode: string, errorCause: string): Promise<void>;
9
- resolve(output: any): Promise<void>;
10
- heartbeat(): Promise<void>;
9
+ setDurableContext(durableContext: DurableContext): void;
11
10
  }
@@ -1,101 +1,16 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
- function verb(n) { return function (v) { return step([n, v]); }; }
15
- function step(op) {
16
- if (f) throw new TypeError("Generator is already executing.");
17
- while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
- if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
- if (y = 0, t) op = [op[0] & 2, t.value];
20
- switch (op[0]) {
21
- case 0: case 1: t = op; break;
22
- case 4: _.label++; return { value: op[1], done: false };
23
- case 5: _.label++; y = op[1]; op = [0]; continue;
24
- case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
- default:
26
- if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
- if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
- if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
- if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
- if (t[2]) _.ops.pop();
31
- _.trys.pop(); continue;
32
- }
33
- op = body.call(thisArg, _);
34
- } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
- if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
- }
37
- };
38
- var __importDefault = (this && this.__importDefault) || function (mod) {
39
- return (mod && mod.__esModule) ? mod : { "default": mod };
40
- };
41
2
  Object.defineProperty(exports, "__esModule", { value: true });
42
3
  exports.AbstractTaskProcessor = void 0;
43
- var aws_sf_connector_1 = __importDefault(require("../connectors/aws-sf-connector"));
44
4
  var AbstractTaskProcessor = /** @class */ (function () {
45
- function AbstractTaskProcessor() {
5
+ function AbstractTaskProcessor(taskContext) {
46
6
  this.taskMap = new Map();
47
- this.debug = false;
7
+ this.taskContext = taskContext;
48
8
  }
49
9
  AbstractTaskProcessor.prototype.registerTask = function (taskName, taskClass) {
50
10
  this.taskMap.set(taskName, taskClass);
51
11
  };
52
- AbstractTaskProcessor.prototype.reject = function (errorCode, errorCause) {
53
- return __awaiter(this, void 0, void 0, function () {
54
- return __generator(this, function (_a) {
55
- switch (_a.label) {
56
- case 0:
57
- if (!this.taskToken) return [3 /*break*/, 2];
58
- return [4 /*yield*/, aws_sf_connector_1.default.sendTaskFailure(this.taskToken, errorCode, errorCause)];
59
- case 1:
60
- _a.sent();
61
- _a.label = 2;
62
- case 2:
63
- if (this.sqsReceiptHandle) // Throw error to signal issue
64
- throw new Error(errorCause);
65
- return [2 /*return*/];
66
- }
67
- });
68
- });
69
- };
70
- AbstractTaskProcessor.prototype.resolve = function (output) {
71
- return __awaiter(this, void 0, void 0, function () {
72
- return __generator(this, function (_a) {
73
- switch (_a.label) {
74
- case 0:
75
- if (!this.taskToken) return [3 /*break*/, 2];
76
- return [4 /*yield*/, aws_sf_connector_1.default.sendTaskSuccess(this.taskToken, JSON.stringify(output))];
77
- case 1:
78
- _a.sent();
79
- _a.label = 2;
80
- case 2: return [2 /*return*/];
81
- }
82
- });
83
- });
84
- };
85
- AbstractTaskProcessor.prototype.heartbeat = function () {
86
- return __awaiter(this, void 0, void 0, function () {
87
- return __generator(this, function (_a) {
88
- switch (_a.label) {
89
- case 0:
90
- if (!this.taskToken) return [3 /*break*/, 2];
91
- return [4 /*yield*/, aws_sf_connector_1.default.sendTaskHeartbeat(this.taskToken)];
92
- case 1:
93
- _a.sent();
94
- _a.label = 2;
95
- case 2: return [2 /*return*/];
96
- }
97
- });
98
- });
12
+ AbstractTaskProcessor.prototype.setDurableContext = function (durableContext) {
13
+ this.taskContext.durableContext = durableContext;
99
14
  };
100
15
  return AbstractTaskProcessor;
101
16
  }());
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-task-processor.js","sourceRoot":"","sources":["../../src/task-processor/abstract-task-processor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,oFAA4D;AAE5D;IAAA;QAEY,YAAO,GAA6B,IAAI,GAAG,EAAuB,CAAC;QAGtE,UAAK,GAAY,KAAK,CAAC;IAuBhC,CAAC;IArBQ,4CAAY,GAAnB,UAAoB,QAAgB,EAAE,SAAsB;QAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;IAEY,sCAAM,GAAnB,UAAoB,SAAiB,EAAE,UAAkB;;;;;6BACnD,IAAI,CAAC,SAAS,EAAd,wBAAc;wBAChB,qBAAM,0BAAc,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,UAAU,CAAC,EAAA;;wBAA3E,SAA2E,CAAC;;;wBAE9E,IAAI,IAAI,CAAC,gBAAgB,EAAE,8BAA8B;4BACvD,MAAM,IAAI,KAAK,CAAC,UAAU,CAAC,CAAC;;;;;KAC/B;IAEY,uCAAO,GAApB,UAAqB,MAAW;;;;;6BAC1B,IAAI,CAAC,SAAS,EAAd,wBAAc;wBAChB,qBAAM,0BAAc,CAAC,eAAe,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,EAAA;;wBAA5E,SAA4E,CAAC;;;;;;KAChF;IAEY,yCAAS,GAAtB;;;;;6BACM,IAAI,CAAC,SAAS,EAAd,wBAAc;wBAChB,qBAAM,0BAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAA;;wBAAtD,SAAsD,CAAC;;;;;;KAC1D;IACH,4BAAC;AAAD,CAAC,AA5BD,IA4BC;AA5BqB,sDAAqB"}
1
+ {"version":3,"file":"abstract-task-processor.js","sourceRoot":"","sources":["../../src/task-processor/abstract-task-processor.ts"],"names":[],"mappings":";;;AAIA;IAME,+BAAY,WAAgC;QAJlC,YAAO,GAA6B,IAAI,GAAG,EAAuB,CAAC;QAK3E,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;IAEM,4CAAY,GAAnB,UAAoB,QAAgB,EAAE,SAAsB;QAC1D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IACxC,CAAC;IAEM,iDAAiB,GAAxB,UAAyB,cAA8B;QACrD,IAAI,CAAC,WAAW,CAAC,cAAc,GAAG,cAAc,CAAC;IACnD,CAAC;IAEH,4BAAC;AAAD,CAAC,AAlBD,IAkBC;AAlBqB,sDAAqB"}
@@ -0,0 +1,3 @@
1
+ import { AbstractTaskContext } from "./abstract-task-context";
2
+ export declare class TaskContext extends AbstractTaskContext {
3
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.TaskContext = void 0;
19
+ var abstract_task_context_1 = require("./abstract-task-context");
20
+ var TaskContext = /** @class */ (function (_super) {
21
+ __extends(TaskContext, _super);
22
+ function TaskContext() {
23
+ return _super !== null && _super.apply(this, arguments) || this;
24
+ }
25
+ return TaskContext;
26
+ }(abstract_task_context_1.AbstractTaskContext));
27
+ exports.TaskContext = TaskContext;
28
+ //# sourceMappingURL=task-context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-context.js","sourceRoot":"","sources":["../../src/task-processor/task-context.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAAA,iEAA4D;AAE5D;IAAiC,+BAAmB;IAApD;;IAEA,CAAC;IAAD,kBAAC;AAAD,CAAC,AAFD,CAAiC,2CAAmB,GAEnD;AAFY,kCAAW"}
@@ -1,5 +1,6 @@
1
1
  import { AbstractTaskProcessor } from "./abstract-task-processor";
2
2
  export declare class TaskProcessor extends AbstractTaskProcessor {
3
+ constructor();
3
4
  process(event: any): Promise<void>;
4
5
  private processRecord;
5
6
  processTask(taskName: string, taskData: any): Promise<void>;
@@ -24,8 +24,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
24
24
  });
25
25
  };
26
26
  var __generator = (this && this.__generator) || function (thisArg, body) {
27
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
28
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
27
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
28
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
29
29
  function verb(n) { return function (v) { return step([n, v]); }; }
30
30
  function step(op) {
31
31
  if (f) throw new TypeError("Generator is already executing.");
@@ -53,10 +53,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
53
53
  Object.defineProperty(exports, "__esModule", { value: true });
54
54
  exports.TaskProcessor = void 0;
55
55
  var abstract_task_processor_1 = require("./abstract-task-processor");
56
+ var task_context_1 = require("./task-context");
56
57
  var TaskProcessor = /** @class */ (function (_super) {
57
58
  __extends(TaskProcessor, _super);
58
59
  function TaskProcessor() {
59
- return _super !== null && _super.apply(this, arguments) || this;
60
+ var taskContext = new task_context_1.TaskContext();
61
+ return _super.call(this, taskContext) || this;
60
62
  }
61
63
  TaskProcessor.prototype.process = function (event) {
62
64
  return __awaiter(this, void 0, void 0, function () {
@@ -64,7 +66,7 @@ var TaskProcessor = /** @class */ (function (_super) {
64
66
  return __generator(this, function (_b) {
65
67
  switch (_b.label) {
66
68
  case 0:
67
- this.taskToken = undefined;
69
+ this.taskContext.taskToken = undefined;
68
70
  _b.label = 1;
69
71
  case 1:
70
72
  _b.trys.push([1, 9, , 11]);
@@ -85,9 +87,9 @@ var TaskProcessor = /** @class */ (function (_super) {
85
87
  case 6:
86
88
  data = event.data;
87
89
  taskName = event.taskName;
88
- this.taskToken = event.taskToken;
89
- if (this.debug)
90
- console.log("Set Task Token: ", this.taskToken);
90
+ this.taskContext.taskToken = event.taskToken;
91
+ if (this.taskContext.debug)
92
+ console.log("Set Task Token: ", this.taskContext.taskToken);
91
93
  if (typeof data === "string") {
92
94
  data = JSON.parse(data);
93
95
  }
@@ -99,7 +101,7 @@ var TaskProcessor = /** @class */ (function (_super) {
99
101
  case 9:
100
102
  e_1 = _b.sent();
101
103
  console.warn(e_1);
102
- return [4 /*yield*/, this.reject('INTERNAL_ERROR', e_1.message)];
104
+ return [4 /*yield*/, this.taskContext.reject('INTERNAL_ERROR', e_1.message)];
103
105
  case 10:
104
106
  _b.sent();
105
107
  return [3 /*break*/, 11];
@@ -133,10 +135,11 @@ var TaskProcessor = /** @class */ (function (_super) {
133
135
  if (!Task) {
134
136
  throw new Error('Task ' + taskName + ' not found!');
135
137
  }
136
- if (this.debug)
138
+ this.taskContext.taskName = taskName;
139
+ this.taskContext.taskInput = taskData;
140
+ if (this.taskContext.debug)
137
141
  console.log("Process Task " + taskName);
138
- task = new Task();
139
- task.setTaskProcessor(this);
142
+ task = new Task(this.taskContext);
140
143
  return [4 /*yield*/, task.work(taskData)];
141
144
  case 1:
142
145
  _a.sent();
@@ -151,9 +154,9 @@ var TaskProcessor = /** @class */ (function (_super) {
151
154
  return __generator(this, function (_a) {
152
155
  switch (_a.label) {
153
156
  case 0:
154
- if (this.debug)
157
+ if (this.taskContext.debug)
155
158
  console.log("Process SQS Message: ", record);
156
- this.sqsReceiptHandle = record.receiptHandle;
159
+ this.taskContext.sqsReceiptHandle = record.receiptHandle;
157
160
  bodyData = JSON.parse(record.body);
158
161
  return [4 /*yield*/, this.processTask(bodyData.taskName, bodyData.data)];
159
162
  case 1:
@@ -1 +1 @@
1
- {"version":3,"file":"task-processor.js","sourceRoot":"","sources":["../../src/task-processor/task-processor.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qEAAgE;AAEhE;IAAmC,iCAAqB;IAAxD;;IAuDA,CAAC;IArDc,+BAAO,GAApB,UAAqB,KAAU;;;;;;wBAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;;;;6BAErB,KAAK,CAAC,OAAO,EAAb,wBAAa;8BACiB,EAAb,KAAA,KAAK,CAAC,OAAO;;;6BAAb,CAAA,cAAa,CAAA;wBAAvB,MAAM;wBACb,qBAAM,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,EAAA;;wBAAhC,SAAgC,CAAC;;;wBADhB,IAAa,CAAA;;;;wBAI5B,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC;wBAChB,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;wBAChC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;wBACjC,IAAI,IAAI,CAAC,KAAK;4BAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;wBAEhE,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;4BAC5B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;yBACzB;wBAED,qBAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,EAAA;;wBAAtC,SAAsC,CAAC;;;;;wBAIzC,OAAO,CAAC,IAAI,CAAC,GAAC,CAAC,CAAC;wBAChB,qBAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,GAAC,CAAC,OAAO,CAAC,EAAA;;wBAA9C,SAA8C,CAAC;;;;;;KAElD;IAGa,qCAAa,GAA3B,UAA4B,MAAW;;;;;6BACjC,CAAA,MAAM,CAAC,WAAW,KAAK,SAAS,CAAA,EAAhC,wBAAgC;wBAClC,qBAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,EAAA;;wBAApC,SAAoC,CAAC;;;;;;KAExC;IAEY,mCAAW,GAAxB,UAAyB,QAAgB,EAAE,QAAa;;;;;;wBAChD,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBACxC,IAAI,CAAC,IAAI,EAAE;4BACT,MAAM,IAAI,KAAK,CAAC,OAAO,GAAG,QAAQ,GAAG,aAAa,CAAC,CAAC;yBACrD;wBAED,IAAI,IAAI,CAAC,KAAK;4BAAE,OAAO,CAAC,GAAG,CAAC,eAAe,GAAG,QAAQ,CAAC,CAAC;wBAElD,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;wBACxB,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;wBAC5B,qBAAM,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAA;;wBAAzB,SAAyB,CAAC;;;;;KAC3B;IAEa,yCAAiB,GAA/B,UAAgC,MAAW;;;;;;wBACzC,IAAI,IAAI,CAAC,KAAK;4BAAE,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC;wBAC7D,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,aAAa,CAAC;wBACvC,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;wBAEzC,qBAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,EAAA;;wBAAxD,SAAwD,CAAC;;;;;KAC1D;IACH,oBAAC;AAAD,CAAC,AAvDD,CAAmC,+CAAqB,GAuDvD;AAvDY,sCAAa"}
1
+ {"version":3,"file":"task-processor.js","sourceRoot":"","sources":["../../src/task-processor/task-processor.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,16 @@
1
- import { AbstractTaskProcessor } from "./abstract-task-processor";
1
+ import { AbstractTaskContext } from "./abstract-task-context";
2
2
  export interface TaskInterface {
3
- setTaskProcessor(taskProcessor: AbstractTaskProcessor): void;
4
3
  work(taskData: any): Promise<any>;
5
4
  }
6
5
  export default class Task implements TaskInterface {
7
- protected taskProcessor: AbstractTaskProcessor | undefined;
6
+ protected context: AbstractTaskContext;
8
7
  protected lastHeartbeat: number;
9
8
  protected heartbeatInterval: number;
9
+ constructor(context: AbstractTaskContext);
10
10
  work(taskData: any): Promise<any>;
11
- setTaskProcessor(taskProcessor: AbstractTaskProcessor): void;
12
11
  resolve(output: any): Promise<void>;
13
12
  reject(errorCode: string, errorCause: string): Promise<void>;
14
13
  heartbeat(): Promise<void>;
14
+ log(message: string, ...data: any): Promise<void>;
15
+ durableContext(): import("@aws/durable-execution-sdk-js").DurableContext<import("@aws/durable-execution-sdk-js").DurableLogger> | undefined;
15
16
  }
@@ -9,8 +9,8 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  var __generator = (this && this.__generator) || function (thisArg, body) {
12
- var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
- return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === "function" ? Iterator : Object).prototype);
13
+ return g.next = verb(0), g["throw"] = verb(1), g["return"] = verb(2), typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
14
  function verb(n) { return function (v) { return step([n, v]); }; }
15
15
  function step(op) {
16
16
  if (f) throw new TypeError("Generator is already executing.");
@@ -35,11 +35,21 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
35
35
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
36
  }
37
37
  };
38
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
38
47
  Object.defineProperty(exports, "__esModule", { value: true });
39
48
  var Task = /** @class */ (function () {
40
- function Task() {
49
+ function Task(context) {
41
50
  this.lastHeartbeat = 0;
42
51
  this.heartbeatInterval = 60000;
52
+ this.context = context;
43
53
  }
44
54
  Task.prototype.work = function (taskData) {
45
55
  return __awaiter(this, void 0, void 0, function () {
@@ -49,54 +59,68 @@ var Task = /** @class */ (function () {
49
59
  });
50
60
  });
51
61
  };
52
- Task.prototype.setTaskProcessor = function (taskProcessor) {
53
- this.taskProcessor = taskProcessor;
54
- };
55
62
  Task.prototype.resolve = function (output) {
56
- var _a;
57
63
  return __awaiter(this, void 0, void 0, function () {
58
- return __generator(this, function (_b) {
59
- switch (_b.label) {
60
- case 0: return [4 /*yield*/, ((_a = this.taskProcessor) === null || _a === void 0 ? void 0 : _a.resolve(output))];
64
+ return __generator(this, function (_a) {
65
+ switch (_a.label) {
66
+ case 0: return [4 /*yield*/, this.context.resolve(output)];
61
67
  case 1:
62
- _b.sent();
68
+ _a.sent();
63
69
  return [2 /*return*/];
64
70
  }
65
71
  });
66
72
  });
67
73
  };
68
74
  Task.prototype.reject = function (errorCode, errorCause) {
69
- var _a;
70
75
  return __awaiter(this, void 0, void 0, function () {
71
- return __generator(this, function (_b) {
72
- switch (_b.label) {
73
- case 0: return [4 /*yield*/, ((_a = this.taskProcessor) === null || _a === void 0 ? void 0 : _a.reject(errorCode, errorCause))];
76
+ return __generator(this, function (_a) {
77
+ switch (_a.label) {
78
+ case 0: return [4 /*yield*/, this.context.reject(errorCode, errorCause)];
74
79
  case 1:
75
- _b.sent();
80
+ _a.sent();
76
81
  return [2 /*return*/];
77
82
  }
78
83
  });
79
84
  });
80
85
  };
81
86
  Task.prototype.heartbeat = function () {
82
- var _a;
83
87
  return __awaiter(this, void 0, void 0, function () {
84
88
  var age;
85
- return __generator(this, function (_b) {
86
- switch (_b.label) {
89
+ return __generator(this, function (_a) {
90
+ switch (_a.label) {
87
91
  case 0:
88
92
  age = Date.now() - this.lastHeartbeat;
89
93
  if (!(age > this.heartbeatInterval)) return [3 /*break*/, 2];
90
- return [4 /*yield*/, ((_a = this.taskProcessor) === null || _a === void 0 ? void 0 : _a.heartbeat())];
94
+ return [4 /*yield*/, this.context.heartbeat()];
91
95
  case 1:
92
- _b.sent();
96
+ _a.sent();
93
97
  this.lastHeartbeat = Date.now();
94
- _b.label = 2;
98
+ _a.label = 2;
95
99
  case 2: return [2 /*return*/];
96
100
  }
97
101
  });
98
102
  });
99
103
  };
104
+ Task.prototype.log = function (message) {
105
+ var data = [];
106
+ for (var _i = 1; _i < arguments.length; _i++) {
107
+ data[_i - 1] = arguments[_i];
108
+ }
109
+ return __awaiter(this, void 0, void 0, function () {
110
+ var _a;
111
+ return __generator(this, function (_b) {
112
+ switch (_b.label) {
113
+ case 0: return [4 /*yield*/, (_a = this.context).log.apply(_a, __spreadArray([message], data, false))];
114
+ case 1:
115
+ _b.sent();
116
+ return [2 /*return*/];
117
+ }
118
+ });
119
+ });
120
+ };
121
+ Task.prototype.durableContext = function () {
122
+ return this.context.durableContext;
123
+ };
100
124
  return Task;
101
125
  }());
102
126
  exports.default = Task;
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/task-processor/task.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA;IAAA;QAGY,kBAAa,GAAW,CAAC,CAAC;QAC1B,sBAAiB,GAAG,KAAM,CAAC;IA0BvC,CAAC;IAxBO,mBAAI,GAAV,UAAW,QAAa;;;gBACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;;;;KACvB;IAED,+BAAgB,GAAhB,UAAiB,aAAoC;QACnD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;IACrC,CAAC;IAEK,sBAAO,GAAb,UAAc,MAAW;;;;;4BACvB,qBAAM,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,OAAO,CAAC,MAAM,CAAC,CAAA,EAAA;;wBAAzC,SAAyC,CAAC;;;;;KAC3C;IAEK,qBAAM,GAAZ,UAAa,SAAiB,EAAE,UAAkB;;;;;4BAChD,qBAAM,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAA,EAAA;;wBAAvD,SAAuD,CAAC;;;;;KACzD;IAEK,wBAAS,GAAf;;;;;;;wBACQ,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;6BACxC,CAAA,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAA,EAA5B,wBAA4B;wBAC9B,qBAAM,CAAA,MAAA,IAAI,CAAC,aAAa,0CAAE,SAAS,EAAE,CAAA,EAAA;;wBAArC,SAAqC,CAAC;wBACtC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;;;;;;KAEnC;IAEH,WAAC;AAAD,CAAC,AA9BD,IA8BC"}
1
+ {"version":3,"file":"task.js","sourceRoot":"","sources":["../../src/task-processor/task.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;IAME,cAAY,OAA4B;QAH9B,kBAAa,GAAW,CAAC,CAAC;QAC1B,sBAAiB,GAAG,KAAM,CAAC;QAGnC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEK,mBAAI,GAAV,UAAW,QAAa;;;gBACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;;;;KACvB;IAEK,sBAAO,GAAb,UAAc,MAAW;;;;4BACvB,qBAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAA;;wBAAlC,SAAkC,CAAC;;;;;KACpC;IAEK,qBAAM,GAAZ,UAAa,SAAiB,EAAE,UAAkB;;;;4BAChD,qBAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,EAAA;;wBAAhD,SAAgD,CAAC;;;;;KAClD;IAEK,wBAAS,GAAf;;;;;;wBACQ,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;6BACxC,CAAA,GAAG,GAAG,IAAI,CAAC,iBAAiB,CAAA,EAA5B,wBAA4B;wBAC9B,qBAAM,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,EAAA;;wBAA9B,SAA8B,CAAC;wBAC/B,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;;;;;;KAEnC;IAEK,kBAAG,GAAT,UAAU,OAAe;QAAE,cAAY;aAAZ,UAAY,EAAZ,qBAAY,EAAZ,IAAY;YAAZ,6BAAY;;;;;;4BACrC,qBAAM,CAAA,KAAA,IAAI,CAAC,OAAO,CAAA,CAAC,GAAG,0BAAC,OAAO,GAAK,IAAI,WAAC;;wBAAxC,SAAwC,CAAC;;;;;KAC1C;IAED,6BAAc,GAAd;QACE,OAAO,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC;IACrC,CAAC;IAEH,WAAC;AAAD,CAAC,AAtCD,IAsCC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "acady-task-worker",
3
- "version": "2.3.1",
3
+ "version": "2.4.1",
4
4
  "description": "Acady Task Worker",
5
5
  "main": "./lib/index.js",
6
6
  "files": [
@@ -13,14 +13,14 @@
13
13
  "deploy": "acady deploy"
14
14
  },
15
15
  "devDependencies": {
16
- "@aws-sdk/client-sfn": "^3.734.0",
17
- "@aws-sdk/client-sqs": "^3.734.0",
18
- "@types/jest": "^26.0.19",
19
- "@types/node": "^14.14.14",
16
+ "@aws-sdk/client-sfn": "^3.946.0",
17
+ "@aws-sdk/client-sqs": "^3.946.0",
18
+ "@types/jest": "^29.5.14",
19
+ "@types/node": "^22.10.1",
20
20
  "acady": "^1.9.1",
21
- "jest": "^26.6.3",
22
- "ts-jest": "^26.4.4",
23
- "typescript": "^4.1.3"
21
+ "jest": "^29.7.0",
22
+ "ts-jest": "^29.2.5",
23
+ "typescript": "^5.7.2"
24
24
  },
25
25
  "license": "MIT",
26
26
  "jest": {
@@ -40,7 +40,10 @@
40
40
  "url": "https://github.com/acady-io/acady-task-worker.git"
41
41
  },
42
42
  "peerDependencies": {
43
- "@aws-sdk/client-sfn": "^3.734.0",
44
- "@aws-sdk/client-sqs": "^3.734.0"
43
+ "@aws-sdk/client-sfn": "^3.946.0",
44
+ "@aws-sdk/client-sqs": "^3.946.0"
45
+ },
46
+ "dependencies": {
47
+ "@aws/durable-execution-sdk-js": "^1.0.0"
45
48
  }
46
49
  }