@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.
- package/lib/sqs-server.d.ts +1 -0
- package/lib/sqs-server.js +18 -3
- package/lib/sqs-server.js.map +1 -1
- package/package.json +2 -2
package/lib/sqs-server.d.ts
CHANGED
|
@@ -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
|
-
|
|
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
|
package/lib/sqs-server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqs-server.js","sourceRoot":"","sources":["../src/sqs-server.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAAiG;AACjG,+CAAuC;AAEvC,+CAA0C;AAC1C,oDAAiF;AACjF,
|
|
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.
|
|
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": "
|
|
30
|
+
"gitHead": "343c9bc359df36f46ae90f9a3b1b2ac59bf39863"
|
|
31
31
|
}
|