UNPKG

yekonga-server

Version:
34 lines (26 loc) 1.02 kB
// @ts-ignore const MongoClient = serverLibrary.mongodb.MongoClient; function Database() { if (!(this instanceof Database)) { return new Database(); } } Database.prototype.connect = async function(options) { options = (options) ? options : {}; var url = (options.srv)? 'mongodb+srv://': 'mongodb://'; if (options.username && options.username.trim() != "" && options.password && options.password.trim() != "") { url += `${options.username}:${options.password}@`; } url += `${options.host}${(options.srv)? '': `:${options.port}`}`; const client = new MongoClient(url); await client.connect(); console.log("Mongodb connected successfully to server"); this.connection = client.db(`${options.databaseName}`); return this.connection; } Database.prototype.close = function() { this.connection.close(function(error) { console.log('Mongodb default connection error: ' + error); }); } module.exports = Database;