@lambda-group/charydbis
Version:
๐ NodeJS ScyllaDB ORM. ๐งช๐ง
46 lines (37 loc) โข 1.31 kB
JavaScript
;Object.defineProperty(exports, "__esModule", {value: true});
var _chunkT6N7BDB6js = require('./chunk-T6N7BDB6.js');
var _chunkKI3NM7CIjs = require('./chunk-KI3NM7CI.js');
// src/data-source.ts
var _scylladb = require('@lambda-group/scylladb');
var _DataSource = class _DataSource {
constructor(options) {
_chunkKI3NM7CIjs.__publicField.call(void 0, this, "options");
_chunkKI3NM7CIjs.__publicField.call(void 0, this, "cluster");
_chunkKI3NM7CIjs.__publicField.call(void 0, this, "session");
this.options = options;
this.session = null;
this.cluster = new (0, _scylladb.Cluster)(this.options);
}
initialize(keyspaceOrOptions) {
return _chunkKI3NM7CIjs.__async.call(void 0, this, null, function* () {
this.session = yield this.cluster.connect(keyspaceOrOptions);
return this;
});
}
getSession() {
if (!this.session) throw new Error("No session available");
return this.session;
}
getRepository(model) {
return new (0, _chunkT6N7BDB6js.Repository)(this, model);
}
[Symbol.dispose]() {
if (this.session) {
this.session = null;
}
}
};
_chunkKI3NM7CIjs.__name.call(void 0, _DataSource, "DataSource");
var DataSource = _DataSource;
exports.DataSource = DataSource;
//# sourceMappingURL=chunk-IY46QLRO.js.map