@wbg-mde/repository
Version:
Managing all common method for file system CRUD operations.
31 lines (30 loc) • 972 B
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const mongodb_1 = require("mongodb");
const model_1 = require("@wbg-mde/model");
class MongoHelper {
constructor() {
this.url = (model_1.configuration.db) ? model_1.configuration.db.connectionData : '';
this.connect(this.url);
}
static getInstance() {
if (!MongoHelper.client) {
new MongoHelper();
return MongoHelper.client.connect().then(() => {
return MongoHelper.client;
});
}
else {
return new Promise(function (resolve, reject) {
resolve(MongoHelper.client);
});
}
}
connect(url) {
MongoHelper.client = new mongodb_1.MongoClient(url, { useNewUrlParser: true, useUnifiedTopology: true });
}
disconnect() {
MongoHelper.client.close();
}
}
exports.MongoHelper = MongoHelper;