I started using the Q Promise package in a simple node.js application. Therefore, I am wondering how I can close the db connection after completing the sequence of promises.
Example:
var toDbConnectionString = function(dbSettings) {
return "mongodb://" +
dbSettings.user + ":" +
dbSettings.password + "@" +
dbSettings.url;
};
var connectionString = toDbConnectionString(dbSettings);
Q.nfcall(
MongoClient.connect,
toDbConnectionString(dbSettings))
.then(function(db) {
return Q.ninvoke(db, "collectionNames");
})
.then(function(collections) {
console.log(collections);
})
.catch(function() {
console.log(arguments);
});
I want to close the connection after displaying the collection names, but there is no db context in this anonymous function.
Is there a way to handle such cases with a promise template?
source
share