lemon-core 4.1.15 → 4.2.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/README.md +2 -0
- package/dist/common/test-helper.d.ts +2 -2
- package/dist/common/test-helper.js +24 -26
- package/dist/common/test-helper.js.map +1 -1
- package/dist/controllers/dummy-controller.js +39 -46
- package/dist/controllers/dummy-controller.js.map +1 -1
- package/dist/controllers/general-api-controller.js +95 -100
- package/dist/controllers/general-api-controller.js.map +1 -1
- package/dist/controllers/general-controller.js +81 -82
- package/dist/controllers/general-controller.js.map +1 -1
- package/dist/cores/api/api-service.d.ts +1 -1
- package/dist/cores/api/api-service.js +228 -269
- package/dist/cores/api/api-service.js.map +1 -1
- package/dist/cores/aws/aws-kms-service.d.ts +1 -2
- package/dist/cores/aws/aws-kms-service.js +143 -153
- package/dist/cores/aws/aws-kms-service.js.map +1 -1
- package/dist/cores/aws/aws-s3-service.d.ts +2 -4
- package/dist/cores/aws/aws-s3-service.js +306 -330
- package/dist/cores/aws/aws-s3-service.js.map +1 -1
- package/dist/cores/aws/aws-sns-service.js +147 -153
- package/dist/cores/aws/aws-sns-service.js.map +1 -1
- package/dist/cores/aws/aws-sqs-service.js +149 -170
- package/dist/cores/aws/aws-sqs-service.js.map +1 -1
- package/dist/cores/aws/index.js +10 -20
- package/dist/cores/aws/index.js.map +1 -1
- package/dist/cores/cache/cache-service.d.ts +2 -2
- package/dist/cores/cache/cache-service.js +435 -499
- package/dist/cores/cache/cache-service.js.map +1 -1
- package/dist/cores/config/config-service.d.ts +1 -1
- package/dist/cores/config/config-service.js +56 -63
- package/dist/cores/config/config-service.js.map +1 -1
- package/dist/cores/config/index.js +14 -24
- package/dist/cores/config/index.js.map +1 -1
- package/dist/cores/core-services.d.ts +1 -1
- package/dist/cores/dynamo/dynamo-query-service.js +37 -51
- package/dist/cores/dynamo/dynamo-query-service.js.map +1 -1
- package/dist/cores/dynamo/dynamo-scan-service.d.ts +2 -2
- package/dist/cores/dynamo/dynamo-scan-service.js +29 -40
- package/dist/cores/dynamo/dynamo-scan-service.js.map +1 -1
- package/dist/cores/dynamo/dynamo-service.d.ts +3 -3
- package/dist/cores/dynamo/dynamo-service.js +540 -605
- package/dist/cores/dynamo/dynamo-service.js.map +1 -1
- package/dist/cores/dynamo/tools/expressions.js +17 -7
- package/dist/cores/dynamo/tools/expressions.js.map +1 -1
- package/dist/cores/dynamo/tools/query.js +142 -127
- package/dist/cores/dynamo/tools/query.js.map +1 -1
- package/dist/cores/dynamo/tools/scan.js +111 -97
- package/dist/cores/dynamo/tools/scan.js.map +1 -1
- package/dist/cores/dynamo/tools/serializer.js +17 -7
- package/dist/cores/dynamo/tools/serializer.js.map +1 -1
- package/dist/cores/dynamo/tools/utils.d.ts +0 -2
- package/dist/cores/dynamo/tools/utils.js.map +1 -1
- package/dist/cores/elastic/elastic6-query-service.js +307 -324
- package/dist/cores/elastic/elastic6-query-service.js.map +1 -1
- package/dist/cores/elastic/elastic6-service.d.ts +3 -3
- package/dist/cores/elastic/elastic6-service.js +568 -647
- package/dist/cores/elastic/elastic6-service.js.map +1 -1
- package/dist/cores/elastic/hangul-service.js +52 -54
- package/dist/cores/elastic/hangul-service.js.map +1 -1
- package/dist/cores/lambda/index.js +42 -36
- package/dist/cores/lambda/index.js.map +1 -1
- package/dist/cores/lambda/lambda-alb-handler.d.ts +2 -2
- package/dist/cores/lambda/lambda-alb-handler.js +59 -72
- package/dist/cores/lambda/lambda-alb-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-cognito-handler.js +10 -19
- package/dist/cores/lambda/lambda-cognito-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-cron-handler.d.ts +1 -1
- package/dist/cores/lambda/lambda-cron-handler.js +14 -23
- package/dist/cores/lambda/lambda-cron-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-dynamo-stream-handler.d.ts +2 -2
- package/dist/cores/lambda/lambda-dynamo-stream-handler.js +57 -67
- package/dist/cores/lambda/lambda-dynamo-stream-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-handler.d.ts +22 -22
- package/dist/cores/lambda/lambda-handler.js +93 -106
- package/dist/cores/lambda/lambda-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-notification-handler.d.ts +1 -1
- package/dist/cores/lambda/lambda-notification-handler.js +39 -50
- package/dist/cores/lambda/lambda-notification-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-sns-handler.js +79 -88
- package/dist/cores/lambda/lambda-sns-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-sqs-handler.js +79 -88
- package/dist/cores/lambda/lambda-sqs-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-web-handler.d.ts +6 -6
- package/dist/cores/lambda/lambda-web-handler.js +387 -412
- package/dist/cores/lambda/lambda-web-handler.js.map +1 -1
- package/dist/cores/lambda/lambda-wss-handler.js +23 -32
- package/dist/cores/lambda/lambda-wss-handler.js.map +1 -1
- package/dist/cores/protocol/index.js +10 -20
- package/dist/cores/protocol/index.js.map +1 -1
- package/dist/cores/protocol/protocol-service.d.ts +3 -3
- package/dist/cores/protocol/protocol-service.js +235 -227
- package/dist/cores/protocol/protocol-service.js.map +1 -1
- package/dist/cores/storage/http-storage-service.js +65 -85
- package/dist/cores/storage/http-storage-service.js.map +1 -1
- package/dist/cores/storage/model-manager.js +66 -85
- package/dist/cores/storage/model-manager.js.map +1 -1
- package/dist/cores/storage/proxy-storage-service.d.ts +2 -2
- package/dist/cores/storage/proxy-storage-service.js +562 -599
- package/dist/cores/storage/proxy-storage-service.js.map +1 -1
- package/dist/cores/storage/redis-storage-service.js +163 -177
- package/dist/cores/storage/redis-storage-service.js.map +1 -1
- package/dist/cores/storage/storage-service.d.ts +8 -1
- package/dist/cores/storage/storage-service.js +359 -324
- package/dist/cores/storage/storage-service.js.map +1 -1
- package/dist/engine/builder.d.ts +1 -1
- package/dist/engine/builder.js +59 -63
- package/dist/engine/builder.js.map +1 -1
- package/dist/engine/engine.d.ts +4 -4
- package/dist/engine/engine.js +9 -18
- package/dist/engine/engine.js.map +1 -1
- package/dist/engine/types.d.ts +1 -1
- package/dist/engine/utilities.d.ts +5 -5
- package/dist/engine/utilities.js +301 -293
- package/dist/engine/utilities.js.map +1 -1
- package/dist/environ.js +4 -6
- package/dist/environ.js.map +1 -1
- package/dist/extended/abstract-service.js +595 -645
- package/dist/extended/abstract-service.js.map +1 -1
- package/dist/extended/libs/sig-v4.js.map +1 -1
- package/dist/generated/field-registry.d.ts +10 -0
- package/dist/generated/field-registry.js +17 -0
- package/dist/generated/field-registry.js.map +1 -0
- package/dist/helpers/helpers.d.ts +17 -9
- package/dist/helpers/helpers.js +88 -78
- package/dist/helpers/helpers.js.map +1 -1
- package/dist/index.js +17 -7
- package/dist/index.js.map +1 -1
- package/dist/lib/dynamodb-value.js +2 -3
- package/dist/lib/dynamodb-value.js.map +1 -1
- package/dist/tools/express.js +4 -5
- package/dist/tools/express.js.map +1 -1
- package/dist/tools/tools.d.ts +3 -1
- package/dist/tools/tools.js +14 -21
- package/dist/tools/tools.js.map +1 -1
- package/package.json +25 -24
- package/dist/exec-cli.d.ts +0 -2
- package/dist/exec-cli.js +0 -211
- package/dist/exec-cli.js.map +0 -1
- package/dist/lib/dynamo/expressions.d.ts +0 -14
- package/dist/lib/dynamo/expressions.js +0 -212
- package/dist/lib/dynamo/expressions.js.map +0 -1
- package/dist/lib/dynamo/query.d.ts +0 -43
- package/dist/lib/dynamo/query.js +0 -246
- package/dist/lib/dynamo/query.js.map +0 -1
- package/dist/lib/dynamo/scan.d.ts +0 -33
- package/dist/lib/dynamo/scan.js +0 -172
- package/dist/lib/dynamo/scan.js.map +0 -1
- package/dist/lib/dynamo/serializer.d.ts +0 -12
- package/dist/lib/dynamo/serializer.js +0 -243
- package/dist/lib/dynamo/serializer.js.map +0 -1
- package/dist/lib/dynamo/utils.d.ts +0 -15
- package/dist/lib/dynamo/utils.js +0 -129
- package/dist/lib/dynamo/utils.js.map +0 -1
- package/dist/tools/shared.d.ts +0 -28
- package/dist/tools/shared.js +0 -143
- package/dist/tools/shared.js.map +0 -1
|
@@ -1,13 +1,4 @@
|
|
|
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
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -33,95 +24,95 @@ const NS = engine_1.$U.NS('HSNS', 'yellow'); // NAMESPACE TO BE PRINTED.
|
|
|
33
24
|
* - default SNS Handler w/ event-listeners.
|
|
34
25
|
*/
|
|
35
26
|
class LambdaSNSHandler extends lambda_handler_1.LambdaSubHandler {
|
|
27
|
+
//* shared config.
|
|
28
|
+
static REPORT_ERROR = lambda_handler_1.LambdaHandler.REPORT_ERROR;
|
|
36
29
|
/**
|
|
37
30
|
* default constructor w/ registering self.
|
|
38
31
|
*/
|
|
39
32
|
constructor(lambda, register) {
|
|
40
33
|
super(lambda, register ? 'sns' : undefined);
|
|
41
|
-
this.listeners = [];
|
|
42
|
-
//* for debugging. save last result
|
|
43
|
-
this.$lastResult = null;
|
|
44
|
-
/**
|
|
45
|
-
* Default SNS Handler.
|
|
46
|
-
*/
|
|
47
|
-
this.handle = (event) => __awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
//* for each records.
|
|
49
|
-
const records = event.Records || [];
|
|
50
|
-
(0, engine_1._log)(NS, `handle(len=${records.length})...`);
|
|
51
|
-
// _log(NS, '> event =', $U.json(event));
|
|
52
|
-
const $doReportError = (0, lambda_handler_1.buildReportError)(LambdaSNSHandler.REPORT_ERROR);
|
|
53
|
-
//* handle sqs record data.
|
|
54
|
-
const onSNSRecord = (record, index) => __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
(0, engine_1._log)(NS, `onSNSRecord(${(record && record.EventSource) || ''}, ${index})...`);
|
|
56
|
-
//* check if via protocol-service.
|
|
57
|
-
const $msg = record.Sns;
|
|
58
|
-
const { Subject } = $msg;
|
|
59
|
-
if (Subject == 'x-protocol-service') {
|
|
60
|
-
const param = protocol_1.default.service.asTransformer('sns').transformToParam($msg);
|
|
61
|
-
const context = param.context;
|
|
62
|
-
const callback = param.callback || '';
|
|
63
|
-
const result = yield this.lambda
|
|
64
|
-
.handleProtocol(param)
|
|
65
|
-
.then(body => {
|
|
66
|
-
// _log(NS, `! res[${index}] =`, $U.json(body));
|
|
67
|
-
callback && (0, engine_1._log)(NS, `> callback[${index}] =`, callback); // ex) api://lemon-queue-api-dev/batch/test11/callback#2.2.1
|
|
68
|
-
context && (0, engine_1._log)(NS, `> context[${index}] =`, engine_1.$U.json(context)); // ex) {"source":"express","domain":"localhost"}
|
|
69
|
-
//* report call back.
|
|
70
|
-
const proto = callback ? protocol_1.default.service.fromURL(context, callback, null, body || {}) : null;
|
|
71
|
-
proto && (0, engine_1._log)(NS, `> protocol[${index}] =`, engine_1.$U.json(proto));
|
|
72
|
-
(0, engine_1._log)(NS, `> config.service =`, this.lambda.config && this.lambda.config.getService());
|
|
73
|
-
//* check if service is in same..
|
|
74
|
-
if (proto && this.lambda.config && proto.service == this.lambda.config.getService()) {
|
|
75
|
-
proto.context.depth = engine_1.$U.N(proto.context.depth, 1) + 1;
|
|
76
|
-
proto.body = body;
|
|
77
|
-
(0, engine_1._log)(NS, `! body[${index}] =`, engine_1.$U.json(body));
|
|
78
|
-
return this.lambda.handleProtocol(proto).then(body => {
|
|
79
|
-
(0, engine_1._log)(NS, `>> body[${index}].callback =`, engine_1.$U.json(body));
|
|
80
|
-
return body;
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
//* call the remote service if callback.
|
|
84
|
-
return proto ? protocol_1.default.service.execute(proto) : body;
|
|
85
|
-
})
|
|
86
|
-
.catch(e => $doReportError(e, param.context, null, { protocol: param }));
|
|
87
|
-
(0, engine_1._log)(NS, `> sns[${index}].res =`, engine_1.$U.json(result));
|
|
88
|
-
return typeof result == 'string' ? result : engine_1.$U.json(result);
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
//* retrieve message-attributes as `param`
|
|
92
|
-
const param = Object.keys($msg.MessageAttributes || {}).reduce((O, key) => {
|
|
93
|
-
const V = $msg.MessageAttributes[key];
|
|
94
|
-
if (!V)
|
|
95
|
-
return O;
|
|
96
|
-
O[key] = V.Type == 'Number' ? Number(V.Value) : V.Value;
|
|
97
|
-
return O;
|
|
98
|
-
}, { subject: Subject });
|
|
99
|
-
//* load data as `body`
|
|
100
|
-
const body = typeof $msg.Message == 'string' && $msg.Message.startsWith('{') && $msg.Message.endsWith('}')
|
|
101
|
-
? JSON.parse($msg.Message)
|
|
102
|
-
: { data: $msg.Message };
|
|
103
|
-
(0, engine_1._log)(NS, `> sns[${index}].param =`, engine_1.$U.json(param));
|
|
104
|
-
(0, engine_1._log)(NS, `> sns[${index}].body =`, engine_1.$U.json(body));
|
|
105
|
-
//* call all listeners in parrallel.
|
|
106
|
-
const asyncNext = (fn, j) => new Promise(resolve => {
|
|
107
|
-
resolve(fn('SNS', param, body, null));
|
|
108
|
-
}).catch(e => $doReportError(e, null, null, { param, body, i: index, j }));
|
|
109
|
-
const res = yield Promise.all(this.listeners.map(asyncNext));
|
|
110
|
-
return res.join(',');
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
//* serialize each records.
|
|
114
|
-
this.$lastResult = yield (0, engine_1.do_parrallel)(records, (record, i) => onSNSRecord(record, i).catch(e => $doReportError(e, null, null, { record, i })), 5);
|
|
115
|
-
//* returns.
|
|
116
|
-
return;
|
|
117
|
-
});
|
|
118
34
|
// _log(NS, `LambdaSNSHandler()..`);
|
|
119
35
|
}
|
|
36
|
+
listeners = [];
|
|
120
37
|
addListener(handler) {
|
|
121
38
|
this.listeners.push(handler);
|
|
122
39
|
}
|
|
40
|
+
//* for debugging. save last result
|
|
41
|
+
$lastResult = null;
|
|
42
|
+
/**
|
|
43
|
+
* Default SNS Handler.
|
|
44
|
+
*/
|
|
45
|
+
handle = async (event) => {
|
|
46
|
+
//* for each records.
|
|
47
|
+
const records = event.Records || [];
|
|
48
|
+
(0, engine_1._log)(NS, `handle(len=${records.length})...`);
|
|
49
|
+
// _log(NS, '> event =', $U.json(event));
|
|
50
|
+
const $doReportError = (0, lambda_handler_1.buildReportError)(LambdaSNSHandler.REPORT_ERROR);
|
|
51
|
+
//* handle sqs record data.
|
|
52
|
+
const onSNSRecord = async (record, index) => {
|
|
53
|
+
(0, engine_1._log)(NS, `onSNSRecord(${(record && record.EventSource) || ''}, ${index})...`);
|
|
54
|
+
//* check if via protocol-service.
|
|
55
|
+
const $msg = record.Sns;
|
|
56
|
+
const { Subject } = $msg;
|
|
57
|
+
if (Subject == 'x-protocol-service') {
|
|
58
|
+
const param = protocol_1.default.service.asTransformer('sns').transformToParam($msg);
|
|
59
|
+
const context = param.context;
|
|
60
|
+
const callback = param.callback || '';
|
|
61
|
+
const result = await this.lambda
|
|
62
|
+
.handleProtocol(param)
|
|
63
|
+
.then(body => {
|
|
64
|
+
// _log(NS, `! res[${index}] =`, $U.json(body));
|
|
65
|
+
callback && (0, engine_1._log)(NS, `> callback[${index}] =`, callback); // ex) api://lemon-queue-api-dev/batch/test11/callback#2.2.1
|
|
66
|
+
context && (0, engine_1._log)(NS, `> context[${index}] =`, engine_1.$U.json(context)); // ex) {"source":"express","domain":"localhost"}
|
|
67
|
+
//* report call back.
|
|
68
|
+
const proto = callback ? protocol_1.default.service.fromURL(context, callback, null, body || {}) : null;
|
|
69
|
+
proto && (0, engine_1._log)(NS, `> protocol[${index}] =`, engine_1.$U.json(proto));
|
|
70
|
+
(0, engine_1._log)(NS, `> config.service =`, this.lambda.config && this.lambda.config.getService());
|
|
71
|
+
//* check if service is in same..
|
|
72
|
+
if (proto && this.lambda.config && proto.service == this.lambda.config.getService()) {
|
|
73
|
+
proto.context.depth = engine_1.$U.N(proto.context.depth, 1) + 1;
|
|
74
|
+
proto.body = body;
|
|
75
|
+
(0, engine_1._log)(NS, `! body[${index}] =`, engine_1.$U.json(body));
|
|
76
|
+
return this.lambda.handleProtocol(proto).then(body => {
|
|
77
|
+
(0, engine_1._log)(NS, `>> body[${index}].callback =`, engine_1.$U.json(body));
|
|
78
|
+
return body;
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
//* call the remote service if callback.
|
|
82
|
+
return proto ? protocol_1.default.service.execute(proto) : body;
|
|
83
|
+
})
|
|
84
|
+
.catch(e => $doReportError(e, param.context, null, { protocol: param }));
|
|
85
|
+
(0, engine_1._log)(NS, `> sns[${index}].res =`, engine_1.$U.json(result));
|
|
86
|
+
return typeof result == 'string' ? result : engine_1.$U.json(result);
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
//* retrieve message-attributes as `param`
|
|
90
|
+
const param = Object.keys($msg.MessageAttributes || {}).reduce((O, key) => {
|
|
91
|
+
const V = $msg.MessageAttributes[key];
|
|
92
|
+
if (!V)
|
|
93
|
+
return O;
|
|
94
|
+
O[key] = V.Type == 'Number' ? Number(V.Value) : V.Value;
|
|
95
|
+
return O;
|
|
96
|
+
}, { subject: Subject });
|
|
97
|
+
//* load data as `body`
|
|
98
|
+
const body = typeof $msg.Message == 'string' && $msg.Message.startsWith('{') && $msg.Message.endsWith('}')
|
|
99
|
+
? JSON.parse($msg.Message)
|
|
100
|
+
: { data: $msg.Message };
|
|
101
|
+
(0, engine_1._log)(NS, `> sns[${index}].param =`, engine_1.$U.json(param));
|
|
102
|
+
(0, engine_1._log)(NS, `> sns[${index}].body =`, engine_1.$U.json(body));
|
|
103
|
+
//* call all listeners in parrallel.
|
|
104
|
+
const asyncNext = (fn, j) => new Promise(resolve => {
|
|
105
|
+
resolve(fn('SNS', param, body, null));
|
|
106
|
+
}).catch(e => $doReportError(e, null, null, { param, body, i: index, j }));
|
|
107
|
+
const res = await Promise.all(this.listeners.map(asyncNext));
|
|
108
|
+
return res.join(',');
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
//* serialize each records.
|
|
112
|
+
this.$lastResult = await (0, engine_1.do_parrallel)(records, (record, i) => onSNSRecord(record, i).catch(e => $doReportError(e, null, null, { record, i })), 5);
|
|
113
|
+
//* returns.
|
|
114
|
+
return;
|
|
115
|
+
};
|
|
123
116
|
}
|
|
124
117
|
exports.LambdaSNSHandler = LambdaSNSHandler;
|
|
125
|
-
//* shared config.
|
|
126
|
-
LambdaSNSHandler.REPORT_ERROR = lambda_handler_1.LambdaHandler.REPORT_ERROR;
|
|
127
118
|
//# sourceMappingURL=lambda-sns-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lambda-sns-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-sns-handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lambda-sns-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-sns-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,4 @@
|
|
|
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
2
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
4
|
};
|
|
@@ -33,95 +24,95 @@ const NS = engine_1.$U.NS('HSQS', 'yellow'); // NAMESPACE TO BE PRINTED.
|
|
|
33
24
|
* - default SQS Handler w/ event-listeners.
|
|
34
25
|
*/
|
|
35
26
|
class LambdaSQSHandler extends lambda_handler_1.LambdaSubHandler {
|
|
27
|
+
//* shared config.
|
|
28
|
+
static REPORT_ERROR = lambda_handler_1.LambdaHandler.REPORT_ERROR;
|
|
36
29
|
/**
|
|
37
30
|
* default constructor w/ registering self.
|
|
38
31
|
*/
|
|
39
32
|
constructor(lambda, register) {
|
|
40
33
|
super(lambda, register ? 'sqs' : undefined);
|
|
41
|
-
this.listeners = [];
|
|
42
|
-
//* for debugging. save last result
|
|
43
|
-
this.$lastResult = null;
|
|
44
|
-
/**
|
|
45
|
-
* Default SQS Handler.
|
|
46
|
-
*/
|
|
47
|
-
this.handle = (event) => __awaiter(this, void 0, void 0, function* () {
|
|
48
|
-
//* for each records.
|
|
49
|
-
const records = event.Records || [];
|
|
50
|
-
(0, engine_1._log)(NS, `handle(len=${records.length})...`);
|
|
51
|
-
// _log(NS, '> event =', $U.json(event));
|
|
52
|
-
const $doReportError = (0, lambda_handler_1.buildReportError)(LambdaSQSHandler.REPORT_ERROR);
|
|
53
|
-
//* handle sqs record data.
|
|
54
|
-
const onSQSRecord = (record, index) => __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
(0, engine_1._log)(NS, `onSQSRecord(${(record && record.messageId) || ''}, ${index})...`);
|
|
56
|
-
//* retrieve message-attributes as `param`
|
|
57
|
-
const param = Object.keys(record.messageAttributes || {}).reduce((O, key) => {
|
|
58
|
-
const V = record.messageAttributes[key];
|
|
59
|
-
if (!V)
|
|
60
|
-
return O;
|
|
61
|
-
const type = V.dataType || '';
|
|
62
|
-
const val = V.stringValue || '';
|
|
63
|
-
O[key] = type == 'Number' ? Number(val) : val;
|
|
64
|
-
return O;
|
|
65
|
-
}, {});
|
|
66
|
-
//* check if via protocol-service.
|
|
67
|
-
if (param['Subject'] && param['Subject'] == 'x-protocol-service') {
|
|
68
|
-
const param = protocol_1.default.service.asTransformer('sqs').transformToParam(record);
|
|
69
|
-
const context = param.context;
|
|
70
|
-
const callback = param.callback || '';
|
|
71
|
-
const result = yield this.lambda
|
|
72
|
-
.handleProtocol(param)
|
|
73
|
-
.then(body => {
|
|
74
|
-
// _log(NS, `! res[${index}] =`, $U.json(body));
|
|
75
|
-
callback && (0, engine_1._log)(NS, `> callback[${index}] =`, callback); // ex) api://lemon-queue-api-dev/batch/test11/callback#2.2.1
|
|
76
|
-
context && (0, engine_1._log)(NS, `> context[${index}] =`, engine_1.$U.json(context)); // ex) {"source":"express","domain":"localhost"}
|
|
77
|
-
//* report call back.
|
|
78
|
-
const proto = callback ? protocol_1.default.service.fromURL(context, callback, null, body || {}) : null;
|
|
79
|
-
proto && (0, engine_1._log)(NS, `> protocol[${index}] =`, engine_1.$U.json(proto));
|
|
80
|
-
(0, engine_1._log)(NS, `> config.service =`, this.lambda.config && this.lambda.config.getService());
|
|
81
|
-
//* check if service is in same..
|
|
82
|
-
if (proto && this.lambda.config && proto.service == this.lambda.config.getService()) {
|
|
83
|
-
proto.context.depth = engine_1.$U.N(proto.context.depth, 1) + 1;
|
|
84
|
-
proto.body = body;
|
|
85
|
-
(0, engine_1._log)(NS, `! body[${index}] =`, engine_1.$U.json(body));
|
|
86
|
-
return this.lambda.handleProtocol(proto).then(body => {
|
|
87
|
-
(0, engine_1._log)(NS, `>> body[${index}].callback =`, engine_1.$U.json(body));
|
|
88
|
-
return body;
|
|
89
|
-
});
|
|
90
|
-
}
|
|
91
|
-
//* call the remote service if callback.
|
|
92
|
-
return proto ? protocol_1.default.service.execute(proto) : body;
|
|
93
|
-
})
|
|
94
|
-
.catch(e => $doReportError(e, param.context, null, { protocol: param }));
|
|
95
|
-
(0, engine_1._log)(NS, `> sqs[${index}].res =`, engine_1.$U.json(result));
|
|
96
|
-
return typeof result == 'string' ? result : engine_1.$U.json(result);
|
|
97
|
-
}
|
|
98
|
-
else {
|
|
99
|
-
//* load data as `body`
|
|
100
|
-
const body = typeof record.body == 'string' && record.body.startsWith('{') && record.body.endsWith('}')
|
|
101
|
-
? JSON.parse(record.body)
|
|
102
|
-
: { data: record.body };
|
|
103
|
-
(0, engine_1._log)(NS, `> sqs[${index}].param =`, engine_1.$U.json(param));
|
|
104
|
-
(0, engine_1._log)(NS, `> sqs[${index}].body =`, engine_1.$U.json(body));
|
|
105
|
-
//* call all listeners in parrallel.
|
|
106
|
-
const asyncNext = (fn, j) => new Promise(resolve => {
|
|
107
|
-
resolve(fn('SQS', param, body, null));
|
|
108
|
-
}).catch(e => $doReportError(e, null, null, { param, body, i: index, j }));
|
|
109
|
-
const res = yield Promise.all(this.listeners.map(asyncNext));
|
|
110
|
-
return res.join(',');
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
//* serialize each records.
|
|
114
|
-
this.$lastResult = yield (0, engine_1.do_parrallel)(records, (record, i) => onSQSRecord(record, i).catch(e => $doReportError(e, null, null, { record, i })), 1);
|
|
115
|
-
//* returns void.
|
|
116
|
-
return;
|
|
117
|
-
});
|
|
118
34
|
// _log(NS, `LambdaSQSHandler()..`);
|
|
119
35
|
}
|
|
36
|
+
listeners = [];
|
|
120
37
|
addListener(handler) {
|
|
121
38
|
this.listeners.push(handler);
|
|
122
39
|
}
|
|
40
|
+
//* for debugging. save last result
|
|
41
|
+
$lastResult = null;
|
|
42
|
+
/**
|
|
43
|
+
* Default SQS Handler.
|
|
44
|
+
*/
|
|
45
|
+
handle = async (event) => {
|
|
46
|
+
//* for each records.
|
|
47
|
+
const records = event.Records || [];
|
|
48
|
+
(0, engine_1._log)(NS, `handle(len=${records.length})...`);
|
|
49
|
+
// _log(NS, '> event =', $U.json(event));
|
|
50
|
+
const $doReportError = (0, lambda_handler_1.buildReportError)(LambdaSQSHandler.REPORT_ERROR);
|
|
51
|
+
//* handle sqs record data.
|
|
52
|
+
const onSQSRecord = async (record, index) => {
|
|
53
|
+
(0, engine_1._log)(NS, `onSQSRecord(${(record && record.messageId) || ''}, ${index})...`);
|
|
54
|
+
//* retrieve message-attributes as `param`
|
|
55
|
+
const param = Object.keys(record.messageAttributes || {}).reduce((O, key) => {
|
|
56
|
+
const V = record.messageAttributes[key];
|
|
57
|
+
if (!V)
|
|
58
|
+
return O;
|
|
59
|
+
const type = V.dataType || '';
|
|
60
|
+
const val = V.stringValue || '';
|
|
61
|
+
O[key] = type == 'Number' ? Number(val) : val;
|
|
62
|
+
return O;
|
|
63
|
+
}, {});
|
|
64
|
+
//* check if via protocol-service.
|
|
65
|
+
if (param['Subject'] && param['Subject'] == 'x-protocol-service') {
|
|
66
|
+
const param = protocol_1.default.service.asTransformer('sqs').transformToParam(record);
|
|
67
|
+
const context = param.context;
|
|
68
|
+
const callback = param.callback || '';
|
|
69
|
+
const result = await this.lambda
|
|
70
|
+
.handleProtocol(param)
|
|
71
|
+
.then(body => {
|
|
72
|
+
// _log(NS, `! res[${index}] =`, $U.json(body));
|
|
73
|
+
callback && (0, engine_1._log)(NS, `> callback[${index}] =`, callback); // ex) api://lemon-queue-api-dev/batch/test11/callback#2.2.1
|
|
74
|
+
context && (0, engine_1._log)(NS, `> context[${index}] =`, engine_1.$U.json(context)); // ex) {"source":"express","domain":"localhost"}
|
|
75
|
+
//* report call back.
|
|
76
|
+
const proto = callback ? protocol_1.default.service.fromURL(context, callback, null, body || {}) : null;
|
|
77
|
+
proto && (0, engine_1._log)(NS, `> protocol[${index}] =`, engine_1.$U.json(proto));
|
|
78
|
+
(0, engine_1._log)(NS, `> config.service =`, this.lambda.config && this.lambda.config.getService());
|
|
79
|
+
//* check if service is in same..
|
|
80
|
+
if (proto && this.lambda.config && proto.service == this.lambda.config.getService()) {
|
|
81
|
+
proto.context.depth = engine_1.$U.N(proto.context.depth, 1) + 1;
|
|
82
|
+
proto.body = body;
|
|
83
|
+
(0, engine_1._log)(NS, `! body[${index}] =`, engine_1.$U.json(body));
|
|
84
|
+
return this.lambda.handleProtocol(proto).then(body => {
|
|
85
|
+
(0, engine_1._log)(NS, `>> body[${index}].callback =`, engine_1.$U.json(body));
|
|
86
|
+
return body;
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
//* call the remote service if callback.
|
|
90
|
+
return proto ? protocol_1.default.service.execute(proto) : body;
|
|
91
|
+
})
|
|
92
|
+
.catch(e => $doReportError(e, param.context, null, { protocol: param }));
|
|
93
|
+
(0, engine_1._log)(NS, `> sqs[${index}].res =`, engine_1.$U.json(result));
|
|
94
|
+
return typeof result == 'string' ? result : engine_1.$U.json(result);
|
|
95
|
+
}
|
|
96
|
+
else {
|
|
97
|
+
//* load data as `body`
|
|
98
|
+
const body = typeof record.body == 'string' && record.body.startsWith('{') && record.body.endsWith('}')
|
|
99
|
+
? JSON.parse(record.body)
|
|
100
|
+
: { data: record.body };
|
|
101
|
+
(0, engine_1._log)(NS, `> sqs[${index}].param =`, engine_1.$U.json(param));
|
|
102
|
+
(0, engine_1._log)(NS, `> sqs[${index}].body =`, engine_1.$U.json(body));
|
|
103
|
+
//* call all listeners in parrallel.
|
|
104
|
+
const asyncNext = (fn, j) => new Promise(resolve => {
|
|
105
|
+
resolve(fn('SQS', param, body, null));
|
|
106
|
+
}).catch(e => $doReportError(e, null, null, { param, body, i: index, j }));
|
|
107
|
+
const res = await Promise.all(this.listeners.map(asyncNext));
|
|
108
|
+
return res.join(',');
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
//* serialize each records.
|
|
112
|
+
this.$lastResult = await (0, engine_1.do_parrallel)(records, (record, i) => onSQSRecord(record, i).catch(e => $doReportError(e, null, null, { record, i })), 1);
|
|
113
|
+
//* returns void.
|
|
114
|
+
return;
|
|
115
|
+
};
|
|
123
116
|
}
|
|
124
117
|
exports.LambdaSQSHandler = LambdaSQSHandler;
|
|
125
|
-
//* shared config.
|
|
126
|
-
LambdaSQSHandler.REPORT_ERROR = lambda_handler_1.LambdaHandler.REPORT_ERROR;
|
|
127
118
|
//# sourceMappingURL=lambda-sqs-handler.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lambda-sqs-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-sqs-handler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lambda-sqs-handler.js","sourceRoot":"","sources":["../../../src/cores/lambda/lambda-sqs-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,9 +24,9 @@ interface ProxyParams<T = any> {
|
|
|
24
24
|
/** protocol parameters */
|
|
25
25
|
$ctx: NextContext<T>;
|
|
26
26
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
27
|
+
type ProxyResult = APIGatewayProxyResult;
|
|
28
|
+
type ProxyResponser = () => ProxyResult;
|
|
29
|
+
type ProxyChain = ProxyParams | ProxyResponser;
|
|
30
30
|
/**
|
|
31
31
|
* build http response body
|
|
32
32
|
* - if body is string type, then content-type would be text/<some>.
|
|
@@ -52,7 +52,7 @@ export declare const redirect: (location: any, status?: number) => APIGatewayPro
|
|
|
52
52
|
* @param event event
|
|
53
53
|
* @param $ctx context
|
|
54
54
|
*/
|
|
55
|
-
export declare const promised: (event:
|
|
55
|
+
export declare const promised: (event: WEBEvent, $ctx: NextContext) => Promise<ProxyChain>;
|
|
56
56
|
/**
|
|
57
57
|
* builder for default handler
|
|
58
58
|
*/
|
|
@@ -60,7 +60,7 @@ export declare const mxNextHandler: (thiz: LambdaWEBHandler) => (params: ProxyCh
|
|
|
60
60
|
/**
|
|
61
61
|
* builder for failure promised.
|
|
62
62
|
*/
|
|
63
|
-
export declare const mxNextFailure: (event:
|
|
63
|
+
export declare const mxNextFailure: (event: WEBEvent, $ctx: NextContext) => (e: any) => APIGatewayProxyResult | Promise<APIGatewayProxyResult>;
|
|
64
64
|
/**
|
|
65
65
|
* class: LambdaWEBHandler
|
|
66
66
|
* - default WEB Handler w/ event-listeners.
|
|
@@ -206,7 +206,7 @@ export declare class MyHttpHeaderTool implements HttpHeaderTool<APIGatewayEventR
|
|
|
206
206
|
});
|
|
207
207
|
hello(): string;
|
|
208
208
|
/** expose `onlyDefined` */
|
|
209
|
-
onlyDefined: <T extends object>(N: T, $def?: T) => T;
|
|
209
|
+
onlyDefined: <T extends object>(N: T, $def?: T | null) => T | null;
|
|
210
210
|
/**
|
|
211
211
|
* build default JWT secret from AWS account id + magic key.
|
|
212
212
|
*/
|