forked from mrvautin/adminMongo
-
Notifications
You must be signed in to change notification settings - Fork 0
/
connections.js
39 lines (32 loc) · 1.06 KB
/
connections.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
var MongoClient = require('mongodb').MongoClient;
exports.addConnection = function (connection, app, callback){
if(!app.locals.dbConnections){
app.locals.dbConnections = [];
}
if(!connection.connOptions){
connection.connOptions = {};
}
MongoClient.connect(connection.connString, connection.connOptions, function(err, database){
if(err){
callback(err, null);
}else{
var dbObj = {};
dbObj.native = database;
dbObj.connString = connection.connString;
dbObj.connOptions = connection.connOptions;
app.locals.dbConnections[connection.connName] = null;
app.locals.dbConnections[connection.connName] = dbObj;
callback(null, null);
}
});
};
exports.removeConnection = function (connection, app){
if(!app.locals.dbConnections){
app.locals.dbConnections = [];
}
try{
app.locals.dbConnections[connection].native.close();
}catch(e){}
delete app.locals.dbConnections[connection];
return;
};