@apipass/sqs-server 0.0.40 → 0.0.42

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.
@@ -2,6 +2,7 @@ import { type CustomTransportStrategy, Server } from '@nestjs/microservices';
2
2
  import { type SqsOptions } from './sqs-options.interface';
3
3
  export declare class SQSServer extends Server implements CustomTransportStrategy {
4
4
  private readonly options;
5
+ static QUEUE_NAME_ALREADY_EXISTS_MSG: string;
5
6
  private readonly sqsClient;
6
7
  private readonly snsClient;
7
8
  private consumers;
package/lib/sqs-server.js CHANGED
@@ -91,12 +91,12 @@ class SQSServer extends microservices_1.Server {
91
91
  if ((_a = handler.extras) === null || _a === void 0 ? void 0 : _a.topic) {
92
92
  const topicArn = yield this.createTopicIfNotExists((_b = handler.extras) === null || _b === void 0 ? void 0 : _b.topic);
93
93
  if (topicArn) {
94
- yield this.createSubscriptionIfNotExists(topicArn, queueName);
94
+ yield this.createSubscriptionIfNotExists(topicArn, queueName, handler.extras.filter);
95
95
  }
96
96
  }
97
97
  });
98
98
  }
99
- createSubscriptionIfNotExists(topicArn, queueName) {
99
+ createSubscriptionIfNotExists(topicArn, queueName, filter) {
100
100
  return __awaiter(this, void 0, void 0, function* () {
101
101
  const input = {
102
102
  TopicArn: topicArn,
@@ -106,6 +106,10 @@ class SQSServer extends microservices_1.Server {
106
106
  RawMessageDelivery: 'true'
107
107
  }
108
108
  };
109
+ if (filter) {
110
+ input.Attributes.FilterPolicyScope = 'MessageAttributes';
111
+ input.Attributes.FilterPolicy = JSON.stringify(filter);
112
+ }
109
113
  yield this.snsClient.send(new client_sns_1.SubscribeCommand(input));
110
114
  });
111
115
  }
@@ -135,7 +139,17 @@ class SQSServer extends microservices_1.Server {
135
139
  })
136
140
  }
137
141
  };
138
- yield this.sqsClient.send(new client_sqs_1.CreateQueueCommand(params));
142
+ try {
143
+ yield this.sqsClient.send(new client_sqs_1.CreateQueueCommand(params));
144
+ }
145
+ catch (e) {
146
+ if ('QueueAlreadyExists' === e.Code && SQSServer.QUEUE_NAME_ALREADY_EXISTS_MSG === e.message) {
147
+ console.info(`${queueName}: ${SQSServer.QUEUE_NAME_ALREADY_EXISTS_MSG}`);
148
+ }
149
+ else {
150
+ throw e;
151
+ }
152
+ }
139
153
  });
140
154
  }
141
155
  close() {
@@ -147,4 +161,5 @@ class SQSServer extends microservices_1.Server {
147
161
  }
148
162
  }
149
163
  exports.SQSServer = SQSServer;
164
+ SQSServer.QUEUE_NAME_ALREADY_EXISTS_MSG = 'A queue already exists with the same name and a different value for attribute Policy';
150
165
  //# sourceMappingURL=sqs-server.js.map
@@ -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.40",
3
+ "version": "0.0.42",
4
4
  "description": "> TODO: description",
5
5
  "author": "Alexandre Zanelatto <alexandre@apipass.com.br>",
6
6
  "license": "ISC",
@@ -27,5 +27,5 @@
27
27
  "tsc": "tsc",
28
28
  "test": "node ./__tests__/@apipass/sqs-server.test.js"
29
29
  },
30
- "gitHead": "0a98b6a3570a511b2e7c69f7084d6122016f1361"
30
+ "gitHead": "343c9bc359df36f46ae90f9a3b1b2ac59bf39863"
31
31
  }