@message-queue-toolkit/sns
Version:
SNS adapter for message-queue-toolkit
32 lines • 1.28 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.AbstractSnsService = exports.SNS_MESSAGE_MAX_SIZE = void 0;
const core_1 = require("@message-queue-toolkit/core");
const snsInitter_1 = require("../utils/snsInitter");
// https://docs.aws.amazon.com/general/latest/gr/sns.html
exports.SNS_MESSAGE_MAX_SIZE = 256 * 1024; // 256KB
class AbstractSnsService extends core_1.AbstractQueueService {
snsClient;
stsClient;
// @ts-ignore
topicArn;
constructor(dependencies, options) {
super(dependencies, options);
this.snsClient = dependencies.snsClient;
this.stsClient = dependencies.stsClient;
}
async init() {
if (this.deletionConfig && this.creationConfig) {
await (0, snsInitter_1.deleteSns)(this.snsClient, this.stsClient, this.deletionConfig, this.creationConfig);
}
const initResult = await (0, snsInitter_1.initSns)(this.snsClient, this.stsClient, this.locatorConfig, this.creationConfig);
this.topicArn = initResult.topicArn;
this.isInitted = true;
}
close() {
this.isInitted = false;
return Promise.resolve();
}
}
exports.AbstractSnsService = AbstractSnsService;
//# sourceMappingURL=AbstractSnsService.js.map