mirror of
https://github.com/naturalcrit/homebrewery.git
synced 2025-12-24 18:32:41 +00:00
38 lines
855 B
JavaScript
38 lines
855 B
JavaScript
const Mongoose = require('mongoose');
|
|
|
|
const getMongoDBURL = (config)=>{
|
|
return config.get('mongodb_uri') ||
|
|
config.get('mongolab_uri') ||
|
|
'mongodb://localhost/homebrewery';
|
|
};
|
|
|
|
const disconnect = ()=>{
|
|
return Mongoose.close();
|
|
};
|
|
|
|
const connect = (config)=>{
|
|
const resolver = (resolve, reject)=>{
|
|
Mongoose.connect(getMongoDBURL(config),
|
|
{ retryWrites: false },
|
|
(error)=>{
|
|
if(error) {
|
|
console.error('Could not connect to a Mongo Database.');
|
|
console.log(error);
|
|
console.error('If you are running locally, make sure mongodb.exe is running.');
|
|
// FIXME: do we need to pass 'error' to 'reject'?
|
|
return reject();
|
|
}
|
|
|
|
return resolve();
|
|
});
|
|
|
|
};
|
|
|
|
return new Promise(resolver);
|
|
};
|
|
|
|
module.exports = {
|
|
connect : connect,
|
|
disconnect : disconnect
|
|
};
|