@sectester/repeater 0.20.0 → 0.20.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/src/lib/Repeater.d.ts +0 -1
- package/src/lib/Repeater.js +0 -13
- package/src/lib/Repeater.js.map +1 -1
- package/src/lib/RepeaterFactory.js +3 -3
- package/src/lib/RepeaterFactory.js.map +1 -1
- package/src/request-runner/Request.d.ts +1 -0
- package/src/request-runner/Request.js +24 -2
- package/src/request-runner/Request.js.map +1 -1
package/package.json
CHANGED
package/src/lib/Repeater.d.ts
CHANGED
package/src/lib/Repeater.js
CHANGED
|
@@ -20,7 +20,6 @@ class Repeater {
|
|
|
20
20
|
this.configuration = configuration;
|
|
21
21
|
const { container } = this.configuration;
|
|
22
22
|
this.logger = container.resolve(core_1.Logger);
|
|
23
|
-
this.setupShutdown();
|
|
24
23
|
}
|
|
25
24
|
get runningStatus() {
|
|
26
25
|
return this._runningStatus;
|
|
@@ -80,18 +79,6 @@ class Repeater {
|
|
|
80
79
|
repeaterId: this.repeaterId
|
|
81
80
|
}));
|
|
82
81
|
}
|
|
83
|
-
setupShutdown() {
|
|
84
|
-
['SIGTERM', 'SIGINT', 'SIGHUP'].forEach(event => {
|
|
85
|
-
process.once(event, async () => {
|
|
86
|
-
try {
|
|
87
|
-
await this.stop();
|
|
88
|
-
}
|
|
89
|
-
catch (e) {
|
|
90
|
-
this.logger.error(e.message);
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
}
|
|
95
82
|
handleRegisterResult(res) {
|
|
96
83
|
const { payload } = res;
|
|
97
84
|
if ('error' in payload) {
|
package/src/lib/Repeater.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Repeater.js","sourceRoot":"","sources":["../../../../../packages/repeater/src/lib/Repeater.ts"],"names":[],"mappings":";;;;AAAA,gCAMgB;AAEhB,0CAAkE;AAClE,mCAA4B;AAC5B,0DAA0B;AAG1B,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,+CAAG,CAAA;IACH,yDAAQ,CAAA;IACR,uDAAO,CAAA;AACT,CAAC,EAJW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAIxB;AAED,MAAa,QAAQ;IAenB,YAAY,EACV,UAAU,EACV,GAAG,EACH,aAAa,EAKd;QAdO,mBAAc,GAAG,aAAa,CAAC,GAAG,CAAC;QAezC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,aAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"Repeater.js","sourceRoot":"","sources":["../../../../../packages/repeater/src/lib/Repeater.ts"],"names":[],"mappings":"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"}
|
|
@@ -43,7 +43,7 @@ let RepeaterFactory = class RepeaterFactory {
|
|
|
43
43
|
this.container.resolve(bus_1.EventBusFactory);
|
|
44
44
|
}
|
|
45
45
|
async createRepeater({ namePrefix, description, requestRunnerOptions, requestRunners = [request_runner_1.HttpRequestRunner, request_runner_1.WsRequestRunner] } = {
|
|
46
|
-
namePrefix:
|
|
46
|
+
namePrefix: 'sectester'
|
|
47
47
|
}) {
|
|
48
48
|
var _a;
|
|
49
49
|
if (namePrefix && namePrefix.length > 44) {
|
|
@@ -51,8 +51,8 @@ let RepeaterFactory = class RepeaterFactory {
|
|
|
51
51
|
}
|
|
52
52
|
this.registerRequestRunners(requestRunners, requestRunnerOptions);
|
|
53
53
|
const { repeaterId } = await this.repeatersManager.createRepeater({
|
|
54
|
-
|
|
55
|
-
|
|
54
|
+
description,
|
|
55
|
+
name: `${namePrefix}-${(0, uuid_1.v4)()}`
|
|
56
56
|
});
|
|
57
57
|
const bus = await this.eventBusFactory.create(repeaterId);
|
|
58
58
|
await ((_a = bus.init) === null || _a === void 0 ? void 0 : _a.call(bus));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RepeaterFactory.js","sourceRoot":"","sources":["../../../../../packages/repeater/src/lib/RepeaterFactory.ts"],"names":[],"mappings":";;;;AAAA,yCAAsC;AACtC,sDAK2B;AAE3B,gCAA0C;AAC1C,gCAAyC;AACzC,0CAAgD;AAChD,+BAAoC;AACpC,uCAA2D;AAE3D;;GAEG;AAEH,IAAa,eAAe,GAA5B,MAAa,eAAe;IA0B1B,YAA6B,aAA4B;QAA5B,kBAAa,GAAb,aAAa,CAAe;QAzBxC,2BAAsB,GAAmC;YACxE,OAAO,EAAE,KAAK;YACd,gBAAgB,EAAE,GAAG;YACrB,eAAe,EAAE,KAAK;YACtB,YAAY,EAAE;gBACZ,WAAW;gBACX,YAAY;gBACZ,UAAU;gBACV,iBAAiB;gBACjB,eAAe;gBACf,UAAU;gBACV,wBAAwB;gBACxB,0BAA0B;gBAC1B,kBAAkB;gBAClB,iBAAiB;gBACjB,mCAAmC;gBACnC,qBAAqB;gBACrB,qBAAqB;gBACrB,qBAAqB;aACtB;SACF,CAAC;QAMA,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,oBAAoB,EAAE,CAAC;QAErE,IAAI,CAAC,gBAAgB;YACnB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAmB,sBAAgB,CAAC,CAAC;QAC7D,IAAI,CAAC,eAAe;YAClB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAkB,qBAAe,CAAC,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,cAAc,CACzB,EACE,UAAU,EACV,WAAW,EACX,oBAAoB,EACpB,cAAc,GAAG,CAAC,kCAAiB,EAAE,gCAAe,CAAC,KAClC;QACnB,UAAU,EAAE,WAAW;KACxB;;QAED,IAAI,UAAU,IAAI,UAAU,CAAC,MAAM,GAAG,EAAE,EAAE;YACxC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;SACjE;QACD,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,oBAAoB,CAAC,CAAC;QAElE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC;YAChE,IAAI,EAAE,GAAG,UAAU,IAAI,IAAA,SAAM,GAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"RepeaterFactory.js","sourceRoot":"","sources":["../../../../../packages/repeater/src/lib/RepeaterFactory.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ class Request {
|
|
|
11
11
|
this.url = url;
|
|
12
12
|
this.correlationIdRegex =
|
|
13
13
|
this.normalizeCorrelationIdRegex(correlationIdRegex);
|
|
14
|
-
this.
|
|
14
|
+
this.setHeaders(headers);
|
|
15
15
|
this.precheckBody(body);
|
|
16
16
|
this.body = body;
|
|
17
17
|
}
|
|
@@ -25,10 +25,17 @@ class Request {
|
|
|
25
25
|
return this.url.startsWith('https');
|
|
26
26
|
}
|
|
27
27
|
setHeaders(headers) {
|
|
28
|
-
|
|
28
|
+
const mergedHeaders = {
|
|
29
29
|
...this._headers,
|
|
30
30
|
...headers
|
|
31
31
|
};
|
|
32
|
+
this._headers = Object.fromEntries(Object.entries(mergedHeaders).map(([field, value]) => [
|
|
33
|
+
field,
|
|
34
|
+
Array.isArray(value) &&
|
|
35
|
+
Request.SINGLE_VALUE_HEADERS.has(field.toLowerCase())
|
|
36
|
+
? value.join(', ')
|
|
37
|
+
: value
|
|
38
|
+
]));
|
|
32
39
|
}
|
|
33
40
|
validateUrl(url) {
|
|
34
41
|
try {
|
|
@@ -55,4 +62,19 @@ class Request {
|
|
|
55
62
|
}
|
|
56
63
|
}
|
|
57
64
|
exports.Request = Request;
|
|
65
|
+
Request.SINGLE_VALUE_HEADERS = new Set([
|
|
66
|
+
'authorization',
|
|
67
|
+
'content-disposition',
|
|
68
|
+
'content-length',
|
|
69
|
+
'content-type',
|
|
70
|
+
'from',
|
|
71
|
+
'host',
|
|
72
|
+
'if-modified-since',
|
|
73
|
+
'if-unmodified-since',
|
|
74
|
+
'location',
|
|
75
|
+
'max-forwards',
|
|
76
|
+
'proxy-authorization',
|
|
77
|
+
'referer',
|
|
78
|
+
'user-agent'
|
|
79
|
+
]);
|
|
58
80
|
//# sourceMappingURL=Request.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Request.js","sourceRoot":"","sources":["../../../../../packages/repeater/src/request-runner/Request.ts"],"names":[],"mappings":";;;AACA,6BAA0B;AAW1B,MAAa,OAAO;
|
|
1
|
+
{"version":3,"file":"Request.js","sourceRoot":"","sources":["../../../../../packages/repeater/src/request-runner/Request.ts"],"names":[],"mappings":";;;AACA,6BAA0B;AAW1B,MAAa,OAAO;IAsClB,YAAY,EACV,QAAQ,EACR,MAAM,EACN,GAAG,EACH,IAAI,EACJ,kBAAkB,EAClB,OAAO,GAAG,EAAE,EACG;;QACf,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,OAAO,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE,mCAAI,KAAK,CAAC;QAC9C,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,kBAAkB;YACrB,IAAI,CAAC,2BAA2B,CAAC,kBAAkB,CAAC,CAAC;QACvD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QACxB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;IACnB,CAAC;IA/BD,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAID,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI,cAAc;QAChB,OAAO,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;IACtC,CAAC;IAqBM,UAAU,CAAC,OAA0C;QAC1D,MAAM,aAAa,GAAG;YACpB,GAAG,IAAI,CAAC,QAAQ;YAChB,GAAG,OAAO;SACX,CAAC;QAEF,IAAI,CAAC,QAAQ,GAAG,MAAM,CAAC,WAAW,CAChC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC,GAAG,CAC/B,CAAC,CAAC,KAAK,EAAE,KAAK,CAA8B,EAAE,EAAE,CAAC;YAC/C,KAAK;YACL,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBACpB,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC;gBACnD,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;gBAClB,CAAC,CAAC,KAAK;SACV,CACF,CACF,CAAC;IACJ,CAAC;IAEO,WAAW,CAAC,GAAW;QAC7B,IAAI;YACF,IAAI,SAAG,CAAC,GAAG,CAAC,CAAC;SACd;QAAC,MAAM;YACN,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;SACjC;IACH,CAAC;IAEO,YAAY,CAAC,IAAwB;QAC3C,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE;YACpC,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;SACzC;IACH,CAAC;IAEO,2BAA2B,CACjC,kBAA+C;QAE/C,IAAI,kBAAkB,EAAE;YACtB,IAAI;gBACF,OAAO,IAAI,MAAM,CAAC,kBAAkB,EAAE,GAAG,CAAC,CAAC;aAC5C;YAAC,MAAM;gBACN,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;aAC/D;SACF;IACH,CAAC;;AApGH,0BAqGC;AApGwB,4BAAoB,GACzC,IAAI,GAAG,CAAS;IACd,eAAe;IACf,qBAAqB;IACrB,gBAAgB;IAChB,cAAc;IACd,MAAM;IACN,MAAM;IACN,mBAAmB;IACnB,qBAAqB;IACrB,UAAU;IACV,cAAc;IACd,qBAAqB;IACrB,SAAS;IACT,YAAY;CACb,CAAC,CAAC"}
|