code: function _singleNodeConnect(uri, options, cb){
    var uriObj = mongodbUri.parse(uri)
    if (uriObj.hosts.length > 1) {
      var err = new Error("Multiple hosts found for single node connection")
      if (cb) {
        return cb(err)
      }
      throw err
    }
    var host = uriObj.hosts[0]
    var serverOptions = options["server"] || null
    var dbOptions = options["db"] || options["database"] || null
  
    var server = new Server(host.host, host.port, serverOptions)
    var db = new NativeDB(uriObj.database, server, dbOptions)
  
    var seq = async.seq(
      function(db, cb) {
        return db.open(cb)
      },
      function(db, cb) {
        if (uriObj.username && uriObj.password) {
          return db.authenticate(uriObj.username, uriObj.password, {}, function(err, authed) {
            return cb(err ? new Error("Unable to authenticate") : undefined, db)
          })
        }
        return cb(undefined, db)
      })
  
    return syncOrAsync(undefined, seq, [db], function(db) {
        return new DB(db)
    }, cb)
  }
docs: _singleNodeConnect
  
  @param {!String} uri
  @param {Object=} options
  @param {function} [cb=undefined] execute asynchronously if present (signature: cb(err, result))
  
  Options are as specified for MongoClient.connect
  http://mongodb.github.io/node-mongodb-native/driver-articles/mongoclient.html#mongoclient-connect-options
  
  MongoClient.connect will return a Master connection if available, regardless of the node specified.
  The _singleNodeConnect strategy ensures that a connection to the specified node is returned,
  not necessarily Master.
  
  This connection strategy cannot recognize URI options.