@apipass/sqs-server 0.0.31-alpha.0 → 0.0.32-alpha.0

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/lib/sqs-server.js CHANGED
@@ -39,7 +39,14 @@ class SQSServer extends microservices_1.Server {
39
39
  callback();
40
40
  }
41
41
  bindHandlers() {
42
- this.messageHandlers.forEach((handler, queueName) => {
42
+ this.messageHandlers.forEach((handlerMetadata, queueName) => {
43
+ var _a;
44
+ const handler = handlerMetadata['callback'];
45
+ console.log('handler:', JSON.stringify(handler));
46
+ const extras = (_a = handlerMetadata.extras) !== null && _a !== void 0 ? _a : {};
47
+ console.log('extras:', JSON.stringify(handler));
48
+ const acceptedTopics = Array.isArray(extras.topic) ? extras.topic : [];
49
+ console.log('acceptedTopics:', JSON.stringify(acceptedTopics));
43
50
  this.createQueueIfNotExist(queueName, this.options);
44
51
  const queueAlreadyRegistered = this.registeredQueues.includes(queueName);
45
52
  if (queueAlreadyRegistered)
@@ -48,13 +55,21 @@ class SQSServer extends microservices_1.Server {
48
55
  sqs: this.sqs,
49
56
  queueUrl: `${this.options.endpoint}/${queueName}`,
50
57
  handleMessage: (message) => __awaiter(this, void 0, void 0, function* () {
58
+ var _b, _c, _d, _e;
51
59
  const { Body } = message, messageMetadata = __rest(message, ["Body"]);
52
- let messageBody = JSON.parse(Body);
53
- if (this.isS3Message(messageBody)) {
54
- messageBody = yield this.readMessageFromPayloadS3Pointer(messageBody[1]);
60
+ let parsedBody = JSON.parse(Body);
61
+ if (this.isS3Message(parsedBody)) {
62
+ parsedBody = yield this.readMessageFromPayloadS3Pointer(parsedBody[1]);
55
63
  }
56
- const sqsCtx = new sqs_context_1.SQSContext({ queueName, messageMetadata });
57
- yield handler(messageBody, sqsCtx);
64
+ const topicArn = (_b = parsedBody.TopicArn) !== null && _b !== void 0 ? _b : (_e = (_d = (_c = parsedBody === null || parsedBody === void 0 ? void 0 : parsedBody.Records) === null || _c === void 0 ? void 0 : _c[0]) === null || _d === void 0 ? void 0 : _d.Sns) === null || _e === void 0 ? void 0 : _e.TopicArn;
65
+ const topicName = topicArn === null || topicArn === void 0 ? void 0 : topicArn.split(':').pop();
66
+ if (acceptedTopics.length > 0 && (!topicName || !acceptedTopics.includes(topicName))) {
67
+ console.info(`Ignored message from topic ${topicName} on queue ${queueName}`);
68
+ return;
69
+ }
70
+ const context = new sqs_context_1.SQSContext({ queueName, messageMetadata });
71
+ console.log(`Received message from queue ${queueName}`);
72
+ yield handler(parsedBody, context);
58
73
  })
59
74
  });
60
75
  app.on('error', (err) => {
@@ -1 +1 @@
1
- {"version":3,"file":"sqs-server.js","sourceRoot":"","sources":["../src/sqs-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sqs-server.js","sourceRoot":"","sources":["../src/sqs-server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apipass/sqs-server",
3
- "version": "0.0.31-alpha.0",
3
+ "version": "0.0.32-alpha.0",
4
4
  "description": "> TODO: description",
5
5
  "author": "Alexandre Zanelatto <alexandre@apipass.com.br>",
6
6
  "license": "ISC",
@@ -26,5 +26,5 @@
26
26
  "tsc": "tsc",
27
27
  "test": "node ./__tests__/@apipass/sqs-server.test.js"
28
28
  },
29
- "gitHead": "a27c92f8046b4185a5985440d6a266d509b9d22e"
29
+ "gitHead": "53e25ff328bee83ba332cf9ca16b6bb409442da6"
30
30
  }