How to use the mongodb.Db function in mongodb

To help you get started, we’ve selected a few mongodb examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github logv / snorkel / snorkel / core / server / db.js View on Github external
// TODO: report errors somewhere?
    if (err) { return ; }
    _db = db;
    arbiter.emit("db_open", db);
  }

  if (db_url) {
    var options = {
      uri_decode_auth: true,
      server: server_options,
      db: db_options
    };
    mongodb.connect(db_url, options, onOpened);
  } else {
    var mongoserver = new mongodb.Server(host, port, server_options);
    var db_connector = new mongodb.Db(db_name, mongoserver, db_options);
    db_connector.open(onOpened);
  }

  return {
    get: function() {
      var cb;
      var args = _.toArray(arguments);
      var last = args.pop();

      if (_.isFunction(last)) {
        cb = last;
      } else {
        args.push(last);
      }

      var db_name = args.join(separator);
github adrai / node-queue / lib / databases / mongodb.js View on Github external
if (options.servers && Array.isArray(options.servers)){
      var servers = [];

      options.servers.forEach(function(item){
        if(item.host && item.port) {
          servers.push(new mongo.Server(item.host, item.port, item.options));
        }
      });

      server = new mongo.ReplSetServers(servers);
    } else {
      server = new mongo.Server(options.host, options.port, options.options);
    }

    this.db = new mongo.Db(options.dbName, server, { safe: true });
    this.db.on('close', function() {
      self.emit('disconnect');
    });

    this.db.open(function (err, client) {
      if (err) {
        if (callback) callback(err);
      } else {
        var finish = function (err) {
          self.client = client;
          self.queue = new mongo.Collection(client, options.collectionName);
          // self.queue.ensureIndex({ 'id': 1 }, function() {});
          if (!err) {
            self.emit('connect');
          }
          if (callback) callback(err, self);
github jaystack / jaydata / au / authentication.js View on Github external
//var host1 = 'db1.storm.jaystack.com';
var host1 = 'localhost';
var host2 = 'db2.storm.jaystack.com';
var port = Connection.DEFAULT_PORT;
var server1 = new Server(host1, port, {});
var server2 = new Server(host2, port, {});
var servers = new Array();
//servers[0] = server2;
//servers[1] = server1;
servers[0] = server1;

// username, password mongohoz
var replStat = new ReplSetServers(servers);
//var usersdb = new Db(config.application.id + '-Users', replStat, {native_parser:false});
//var usersdb = new Db('Users', replStat, {native_parser:false});
var usersdb = new Db('ApplicationDB', new Server(host1, port, {}), {native_parser:false});
usersdb.open(function(err, db) {
  console.log('users database opened');
});

function mongoAuthenticate(username, password) {
    var defer = q.defer();
    usersdb.collection('Users', function(err, collection) {
      if (err) defer.reject(err);
      collection.find({Login:username}, function(err, cursor) {
        cursor.toArray(function(err, users) {
          if (err) defer.reject(err);
          if (users.length == 0) defer.reject('No such user');
          else if (users.length > 1) defer.reject('Duplicate user');
          else bcrypt.compare(password, users[0].Password, function(err, ok) {
            if (err) defer.reject(err);
            if (!ok) defer.reject('Invalid password');
github hyperstudio / MIT-Annotation-Data-Store / node_modules / mongoose / lib / drivers / node-mongodb-native / connection.js View on Github external
NativeConnection.prototype.doOpenSet = function (fn) {
  if (!this.db) {
    var servers = []
      , ports = this.port
      , self = this

    this.host.forEach(function (host, i) {
      servers.push(new mongo.Server(host, Number(ports[i]), self.options.server));
    });

    var server = new ReplSetServers(servers, this.options.replset);
    this.db = new mongo.Db(this.name, server, this.options.db);

    this.db.on('fullsetup', function () {
      self.emit('fullsetup')
    });
  }

  this.db.open(function (err) {
    if (err) return fn(err);
    fn();
    listen(self);
  });

  return this;
};
github timkuijsten / node-mongovi / main.js View on Github external
function setupConnection(config, cb) {
  if (typeof config !== 'object') { throw new TypeError('config must be an object'); }
  if (typeof cb !== 'function') { throw new TypeError('cb must be a function'); }

  var cfg = {};
  cfg = config;
  cfg.db   = program.db || program.args[0] || config.db || 'admin';
  cfg.user = program.user || config.user || '';
  cfg.pass = config.pass || '';
  cfg.host = program.host || config.host || '127.0.0.1';
  cfg.port = program.port || config.port || 27017;

  var db = new mongodb.Db(cfg.db, new mongodb.Server(cfg.host, cfg.port), { w: 1 });

  db.open(function(err) {
    if (err) { return cb(err); }

    if (config.user || config.pass) {
      var authDb = db.db(config.authDb || config.db);
      authDb.authenticate(config.user, config.pass, function(err) {
        cb(err, db);
      });
    } else {
      cb(null, db);
    }
  });
}
github webgme / webgme / nodeserver / src / server / servertwo.js View on Github external
var DirtyStorage = function(cProjectName,cBranchName){
    "use strict";
    var cObjects,
        MONGO = require('mongodb'),
        DB = new MONGO.Db(cProjectName, new MONGO.Server(commonUtil.MongoDBLocation, commonUtil.MongoDBPort, {},{}));

    /*public functions*/
    this.get = function(id,cb){
        if(cObjects){
            cObjects.findOne({"_id":id},function(err,result){
                if(err){
                    cb(err);
                }
                else{
                    cb(null,result.object);
                }
            });
        }
        else{
            cb(1);
        }
github IdeaBlade / Breeze / _Internal / Mongo / ExpressDemo / routes.js View on Github external
var mongodb = require('mongodb');
var fs = require('fs');
var breezeMongo = require('breeze-mongodb');

//var MongoQuery = breezeMongo.MongoQuery;
//var MongoSaveHandler = breezeMongo.MongoSaveHandler;

var host = 'localhost';
var port = 27017;
var dbName = 'NorthwindIB';
var dbServer = new mongodb.Server(host, port, { auto_reconnect: true});
var db = new mongodb.Db(dbName, dbServer, { strict:true, w: 1});
db.open(function () {

});

exports.getMetadata = function(req, res, next) {
    var filename = "metadata.json";
    if (!fs.existsSync(filename)) {
        next(new Error("Unable to locate file: " + filename));
    }
    var metadata = fs.readFileSync(filename, 'utf8');
    res.sendfile(filename);
}

exports.get = function (req, res, next) {

    var slug = req.params.slug;
github yuanzm / microblog / models / db.js View on Github external
/*
 * 数据库连接配置模块 
 */

var settings = require('../settings'),
    Db = require('mongodb').Db,
    Connection = require('mongodb').Connection,
    Server = require('mongodb').Server;
    
module.exports = new Db(settings.db, new Server(settings.host, Connection.DEFAULT_PORT, {}), {safe: true});
github benlowry / node-mongodb-wrapper / mongo-wrapper.js View on Github external
function getConnection(databasename, collectionname, operation, callback) {

    var database = databases[databasename];
    var options = {
        slave_ok: true
    };

    var db = new mongodb.Db(database.name, new mongodb.Server(database.address, database.port, options));
    db.open(function (error, connection) {

        var cnn = {
			connection: connection, 
			db: db,
			databasename: databasename
		};

        if(error) {
            trace("connection failed to " + databasename + ": "+ error);
            getConnection(databasename, collectionname, operation, callback);
            killConnection(cnn, error);
            return;
        }

        if(!database.username && !database.password) {
github mariano-fiorentino / amid / lib / rest.js View on Github external
function getCollectionList(namedb, config){

        var db = new mongo.Db(namedb, new mongo.Server(config.db.host, config.db.port, {'auto_reconnect':true}));
        db.open(function(err, db){
        
            db.authenticate(config.db.username, config.db.password, function callback(){
 
                db.collectionNames(function(err,replies) {
 
                    out=0;
                    replies.forEach(function(document) {
                        if (document.name.indexOf("\.indexes") == -1) {  
                            writeBack(namedb + '/'  + document.name.replace(".","/"));
                        }
                        if(out === (replies.length-1)){
                            setPres();
                        }
                        out++;
                        writeEnd();