@hotmeshio/hotmesh
Version:
Serverless Workflow
35 lines (34 loc) • 991 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
exports.NatsConnection = void 0;
const __1 = require("..");
class NatsConnection extends __1.AbstractConnection {
constructor() {
super(...arguments);
this.defaultOptions = {
servers: ['nats:4222'],
timeout: 5000,
};
}
async createConnection(Connect, options) {
try {
return (await Connect(options));
}
catch (error) {
NatsConnection.logger.error(`nats-provider-connection-failed`, {
error,
});
throw new Error(`nats-provider-connection-failed: ${error.message}`);
}
}
getClient() {
if (!this.connection) {
throw new Error('nats-provider-connection-failed');
}
return this.connection;
}
async closeConnection(connection) {
await connection.close();
}
}
exports.NatsConnection = NatsConnection;
;