You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@apex.apache.org by da...@apache.org on 2015/11/30 22:06:21 UTC

[15/98] [abbrv] [partial] incubator-apex-malhar git commit: Removing all web demos

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection.js
deleted file mode 100644
index 45f69ad..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection.js
+++ /dev/null
@@ -1,541 +0,0 @@
-var utils = require('./connection_utils'),
-  inherits = require('util').inherits,
-  net = require('net'),
-  EventEmitter = require('events').EventEmitter,
-  inherits = require('util').inherits,
-  binaryutils = require('../utils'),
-  tls = require('tls');
-
-var Connection = exports.Connection = function(id, socketOptions) {
-  var self = this;
-  // Set up event emitter
-  EventEmitter.call(this);
-  // Store all socket options
-  this.socketOptions = socketOptions ? socketOptions : {host:'localhost', port:27017, domainSocket:false};
-  // Set keep alive default if not overriden
-  if(this.socketOptions.keepAlive == null && (process.platform !== "sunos" || process.platform !== "win32")) this.socketOptions.keepAlive = 100;
-  // Id for the connection
-  this.id = id;
-  // State of the connection
-  this.connected = false;
-  // Set if this is a domain socket
-  this.domainSocket = this.socketOptions.domainSocket;
-
-  // Supported min and max wire protocol
-  this.minWireVersion = 0;
-  this.maxWireVersion = 2;
-
-  //
-  // Connection parsing state
-  //
-  this.maxBsonSize = socketOptions.maxBsonSize ? socketOptions.maxBsonSize : Connection.DEFAULT_MAX_BSON_SIZE;
-  this.maxMessageSizeBytes = socketOptions.maxMessageSizeBytes ? socketOptions.maxMessageSizeBytes : Connection.DEFAULT_MAX_MESSAGE_SIZE;
-  // Contains the current message bytes
-  this.buffer = null;
-  // Contains the current message size
-  this.sizeOfMessage = 0;
-  // Contains the readIndex for the messaage
-  this.bytesRead = 0;
-  // Contains spill over bytes from additional messages
-  this.stubBuffer = 0;
-
-  // Just keeps list of events we allow
-  this.eventHandlers = {error:[], parseError:[], poolReady:[], message:[], close:[], timeout:[], end:[]};
-
-  // Just keeps list of events we allow
-  resetHandlers(this, false);
-  // Bson object
-  this.maxBsonSettings = {
-      disableDriverBSONSizeCheck: this.socketOptions['disableDriverBSONSizeCheck'] || false
-    , maxBsonSize: this.maxBsonSize
-    , maxMessageSizeBytes: this.maxMessageSizeBytes
-  }
-
-  // Allow setting the socketTimeoutMS on all connections
-  // to work around issues such as secondaries blocking due to compaction
-  Object.defineProperty(this, "socketTimeoutMS", {
-      enumerable: true
-    , get: function () { return self.socketOptions.socketTimeoutMS; }
-    , set: function (value) { 
-      // Set the socket timeoutMS value
-      self.socketOptions.socketTimeoutMS = value;
-      // Set the physical connection timeout
-      self.connection.setTimeout(self.socketOptions.socketTimeoutMS);
-    }
-  });  
-}
-
-// Set max bson size
-Connection.DEFAULT_MAX_BSON_SIZE = 1024 * 1024 * 4;
-// Set default to max bson to avoid overflow or bad guesses
-Connection.DEFAULT_MAX_MESSAGE_SIZE = Connection.DEFAULT_MAX_BSON_SIZE;
-
-// Inherit event emitter so we can emit stuff wohoo
-inherits(Connection, EventEmitter);
-
-Connection.prototype.start = function() {
-  var self = this;
-
-  // If we have a normal connection
-  if(this.socketOptions.ssl) {
-    // Create new connection instance
-    if(this.domainSocket) {
-      this.connection = net.createConnection(this.socketOptions.host);
-    } else {
-      this.connection = net.createConnection(this.socketOptions.port, this.socketOptions.host);
-    }
-    if(this.logger != null && this.logger.doDebug){
-      this.logger.debug("opened connection", this.socketOptions);
-    }
-
-    // Set options on the socket
-    this.connection.setTimeout(this.socketOptions.connectTimeoutMS != null ? this.socketOptions.connectTimeoutMS : this.socketOptions.timeout);
-    // Work around for 0.4.X
-    if(process.version.indexOf("v0.4") == -1) this.connection.setNoDelay(this.socketOptions.noDelay);
-    // Set keep alive if defined
-    if(process.version.indexOf("v0.4") == -1) {
-      if(this.socketOptions.keepAlive > 0) {
-        this.connection.setKeepAlive(true, this.socketOptions.keepAlive);
-      } else {
-        this.connection.setKeepAlive(false);
-      }
-    }
-
-    // Check if the driver should validate the certificate
-    var validate_certificates = this.socketOptions.sslValidate == true ? true : false;
-
-    // Create options for the tls connection
-    var tls_options = {
-        socket: this.connection
-      , rejectUnauthorized: false
-    }
-
-    // If we wish to validate the certificate we have provided a ca store
-    if(validate_certificates) {
-      tls_options.ca = this.socketOptions.sslCA;
-    }
-
-    // If we have a certificate to present
-    if(this.socketOptions.sslCert) {      
-      tls_options.cert = this.socketOptions.sslCert;
-      tls_options.key = this.socketOptions.sslKey;
-    }
-
-    // If the driver has been provided a private key password
-    if(this.socketOptions.sslPass) {
-      tls_options.passphrase = this.socketOptions.sslPass;
-    }
-
-    // Contains the cleartext stream
-    var cleartext = null;
-    // Attempt to establish a TLS connection to the server
-    try {
-      cleartext = tls.connect(this.socketOptions.port, this.socketOptions.host, tls_options, function() {      
-        // If we have a ssl certificate validation error return an error
-        if(cleartext.authorizationError && validate_certificates) {          
-          // Emit an error
-          return self.emit("error", cleartext.authorizationError, self, {ssl:true});        
-        }
-        
-        // Connect to the server
-        connectHandler(self)();
-      })      
-    } catch(err) {
-      return self.emit("error", "SSL connection failed", self, {ssl:true});
-    }
-
-    // Save the output stream
-    this.writeSteam = cleartext;
-
-    // Set up data handler for the clear stream
-    cleartext.on("data", createDataHandler(this));
-    // Do any handling of end event of the stream
-    cleartext.on("end", endHandler(this));
-    cleartext.on("error", errorHandler(this));    
-
-    // Handle any errors
-    this.connection.on("error", errorHandler(this));    
-    // Handle timeout
-    this.connection.on("timeout", timeoutHandler(this));
-    // Handle drain event
-    this.connection.on("drain", drainHandler(this));
-    // Handle the close event
-    this.connection.on("close", closeHandler(this));
-  } else {
-    // Create new connection instance
-    if(this.domainSocket) {
-      this.connection = net.createConnection(this.socketOptions.host);
-    } else {
-      this.connection = net.createConnection(this.socketOptions.port, this.socketOptions.host);
-    }
-    if(this.logger != null && this.logger.doDebug){
-      this.logger.debug("opened connection", this.socketOptions);
-    }
-
-    // Set options on the socket
-    this.connection.setTimeout(this.socketOptions.connectTimeoutMS != null ? this.socketOptions.connectTimeoutMS : this.socketOptions.timeout);
-    // Work around for 0.4.X
-    if(process.version.indexOf("v0.4") == -1) this.connection.setNoDelay(this.socketOptions.noDelay);
-    // Set keep alive if defined
-    if(process.version.indexOf("v0.4") == -1) {
-      if(this.socketOptions.keepAlive > 0) {
-        this.connection.setKeepAlive(true, this.socketOptions.keepAlive);
-      } else {
-        this.connection.setKeepAlive(false);
-      }
-    }
-
-    // Set up write stream
-    this.writeSteam = this.connection;
-    // Add handlers
-    this.connection.on("error", errorHandler(this));
-    // Add all handlers to the socket to manage it
-    this.connection.on("connect", connectHandler(this));
-    // this.connection.on("end", endHandler(this));
-    this.connection.on("data", createDataHandler(this));
-    this.connection.on("timeout", timeoutHandler(this));
-    this.connection.on("drain", drainHandler(this));
-    this.connection.on("close", closeHandler(this));
-  }
-}
-
-// Check if the sockets are live
-Connection.prototype.isConnected = function() {
-  return this.connected && !this.connection.destroyed && this.connection.writable && this.connection.readable;
-}
-
-// Validate if the driver supports this server
-Connection.prototype.isCompatible = function() {
-  if(this.serverCapabilities == null) return true;
-  // Is compatible with backward server
-  if(this.serverCapabilities.minWireVersion == 0 
-    && this.serverCapabilities.maxWireVersion ==0) return true;
-
-  // Check if we overlap
-  if(this.serverCapabilities.minWireVersion >= this.minWireVersion
-    && this.serverCapabilities.maxWireVersion <= this.maxWireVersion) return true;
-
-  // Not compatible
-  return false;
-}
-
-// Write the data out to the socket
-Connection.prototype.write = function(command, callback) {
-  try {
-    // If we have a list off commands to be executed on the same socket
-    if(Array.isArray(command)) {
-      for(var i = 0; i < command.length; i++) {
-        try {
-          // Pass in the bson validation settings (validate early)
-          var binaryCommand = command[i].toBinary(this.maxBsonSettings)
-
-          if(this.logger != null && this.logger.doDebug) 
-            this.logger.debug("writing command to mongodb", {binary: binaryCommand, json: command[i]});
-
-          this.writeSteam.write(binaryCommand);
-        } catch(err) {
-          return callback(err, null);
-        }
-      }
-    } else {
-      try {
-        // Pass in the bson validation settings (validate early)
-        var binaryCommand = command.toBinary(this.maxBsonSettings)
-        // Do we have a logger active log the event
-        if(this.logger != null && this.logger.doDebug) 
-          this.logger.debug("writing command to mongodb", {binary: binaryCommand, json: command[i]});
-        // Write the binary command out to socket
-        this.writeSteam.write(binaryCommand);
-      } catch(err) {
-        return callback(err, null)
-      }
-    }
-  } catch (err) {
-    if(typeof callback === 'function') callback(err);
-  }
-}
-
-// Force the closure of the connection
-Connection.prototype.close = function() {
-  // clear out all the listeners
-  resetHandlers(this, true);
-  // Add a dummy error listener to catch any weird last moment errors (and ignore them)
-  this.connection.on("error", function() {})
-  // destroy connection
-  this.connection.destroy();
-  if(this.logger != null && this.logger.doDebug){
-    this.logger.debug("closed connection", this.connection);
-  }
-}
-
-// Reset all handlers
-var resetHandlers = function(self, clearListeners) {
-  self.eventHandlers = {error:[], connect:[], close:[], end:[], timeout:[], parseError:[], message:[]};
-
-  // If we want to clear all the listeners
-  if(clearListeners && self.connection != null) {
-    var keys = Object.keys(self.eventHandlers);
-    // Remove all listeners
-    for(var i = 0; i < keys.length; i++) {
-      self.connection.removeAllListeners(keys[i]);
-    }
-  }
-}
-
-//
-// Handlers
-//
-
-// Connect handler
-var connectHandler = function(self) {
-  return function(data) {
-    // Set connected
-    self.connected = true;
-    // Now that we are connected set the socket timeout
-    self.connection.setTimeout(self.socketOptions.socketTimeoutMS != null ? self.socketOptions.socketTimeoutMS : self.socketOptions.timeout);
-    // Emit the connect event with no error
-    self.emit("connect", null, self);
-  }
-}
-
-var createDataHandler = exports.Connection.createDataHandler = function(self) {
-  // We need to handle the parsing of the data
-  // and emit the messages when there is a complete one
-  return function(data) {
-    // Parse until we are done with the data
-    while(data.length > 0) {
-      // If we still have bytes to read on the current message
-      if(self.bytesRead > 0 && self.sizeOfMessage > 0) {
-        // Calculate the amount of remaining bytes
-        var remainingBytesToRead = self.sizeOfMessage - self.bytesRead;
-        // Check if the current chunk contains the rest of the message
-        if(remainingBytesToRead > data.length) {
-          // Copy the new data into the exiting buffer (should have been allocated when we know the message size)
-          data.copy(self.buffer, self.bytesRead);
-          // Adjust the number of bytes read so it point to the correct index in the buffer
-          self.bytesRead = self.bytesRead + data.length;
-
-          // Reset state of buffer
-          data = new Buffer(0);
-        } else {
-          // Copy the missing part of the data into our current buffer
-          data.copy(self.buffer, self.bytesRead, 0, remainingBytesToRead);
-          // Slice the overflow into a new buffer that we will then re-parse
-          data = data.slice(remainingBytesToRead);
-
-          // Emit current complete message
-          try {
-            var emitBuffer = self.buffer;
-            // Reset state of buffer
-            self.buffer = null;
-            self.sizeOfMessage = 0;
-            self.bytesRead = 0;
-            self.stubBuffer = null;
-            // Emit the buffer
-            self.emit("message", emitBuffer, self);
-          } catch(err) {
-            var errorObject = {err:"socketHandler", trace:err, bin:self.buffer, parseState:{
-              sizeOfMessage:self.sizeOfMessage,
-              bytesRead:self.bytesRead,
-              stubBuffer:self.stubBuffer}};
-            if(self.logger != null && self.logger.doError) self.logger.error("parseError", errorObject);
-            // We got a parse Error fire it off then keep going
-            self.emit("parseError", errorObject, self);
-          }
-        }
-      } else {
-        // Stub buffer is kept in case we don't get enough bytes to determine the
-        // size of the message (< 4 bytes)
-        if(self.stubBuffer != null && self.stubBuffer.length > 0) {
-
-          // If we have enough bytes to determine the message size let's do it
-          if(self.stubBuffer.length + data.length > 4) {
-            // Prepad the data
-            var newData = new Buffer(self.stubBuffer.length + data.length);
-            self.stubBuffer.copy(newData, 0);
-            data.copy(newData, self.stubBuffer.length);
-            // Reassign for parsing
-            data = newData;
-
-            // Reset state of buffer
-            self.buffer = null;
-            self.sizeOfMessage = 0;
-            self.bytesRead = 0;
-            self.stubBuffer = null;
-
-          } else {
-
-            // Add the the bytes to the stub buffer
-            var newStubBuffer = new Buffer(self.stubBuffer.length + data.length);
-            // Copy existing stub buffer
-            self.stubBuffer.copy(newStubBuffer, 0);
-            // Copy missing part of the data
-            data.copy(newStubBuffer, self.stubBuffer.length);
-            // Exit parsing loop
-            data = new Buffer(0);
-          }
-        } else {
-          if(data.length > 4) {
-            // Retrieve the message size
-            var sizeOfMessage = binaryutils.decodeUInt32(data, 0);
-            // If we have a negative sizeOfMessage emit error and return
-            if(sizeOfMessage < 0 || sizeOfMessage > self.maxBsonSize) {
-              var errorObject = {err:"socketHandler", trace:'', bin:self.buffer, parseState:{
-                sizeOfMessage: sizeOfMessage,
-                bytesRead: self.bytesRead,
-                stubBuffer: self.stubBuffer}};
-              if(self.logger != null && self.logger.doError) self.logger.error("parseError", errorObject);
-              // We got a parse Error fire it off then keep going
-              self.emit("parseError", errorObject, self);
-              return;
-            }
-
-            // Ensure that the size of message is larger than 0 and less than the max allowed
-            if(sizeOfMessage > 4 && sizeOfMessage < self.maxBsonSize && sizeOfMessage > data.length) {
-              self.buffer = new Buffer(sizeOfMessage);
-              // Copy all the data into the buffer
-              data.copy(self.buffer, 0);
-              // Update bytes read
-              self.bytesRead = data.length;
-              // Update sizeOfMessage
-              self.sizeOfMessage = sizeOfMessage;
-              // Ensure stub buffer is null
-              self.stubBuffer = null;
-              // Exit parsing loop
-              data = new Buffer(0);
-
-            } else if(sizeOfMessage > 4 && sizeOfMessage < self.maxBsonSize && sizeOfMessage == data.length) {
-              try {
-                var emitBuffer = data;
-                // Reset state of buffer
-                self.buffer = null;
-                self.sizeOfMessage = 0;
-                self.bytesRead = 0;
-                self.stubBuffer = null;
-                // Exit parsing loop
-                data = new Buffer(0);
-                // Emit the message
-                self.emit("message", emitBuffer, self);
-              } catch (err) {
-                var errorObject = {err:"socketHandler", trace:err, bin:self.buffer, parseState:{
-                  sizeOfMessage:self.sizeOfMessage,
-                  bytesRead:self.bytesRead,
-                  stubBuffer:self.stubBuffer}};
-                if(self.logger != null && self.logger.doError) self.logger.error("parseError", errorObject);
-                // We got a parse Error fire it off then keep going
-                self.emit("parseError", errorObject, self);
-              }
-            } else if(sizeOfMessage <= 4 || sizeOfMessage > self.maxBsonSize) {
-              var errorObject = {err:"socketHandler", trace:null, bin:data, parseState:{
-                sizeOfMessage:sizeOfMessage,
-                bytesRead:0,
-                buffer:null,
-                stubBuffer:null}};
-              if(self.logger != null && self.logger.doError) self.logger.error("parseError", errorObject);
-              // We got a parse Error fire it off then keep going
-              self.emit("parseError", errorObject, self);
-
-              // Clear out the state of the parser
-              self.buffer = null;
-              self.sizeOfMessage = 0;
-              self.bytesRead = 0;
-              self.stubBuffer = null;
-              // Exit parsing loop
-              data = new Buffer(0);
-
-            } else {
-              try {
-                var emitBuffer = data.slice(0, sizeOfMessage);
-                // Reset state of buffer
-                self.buffer = null;
-                self.sizeOfMessage = 0;
-                self.bytesRead = 0;
-                self.stubBuffer = null;
-                // Copy rest of message
-                data = data.slice(sizeOfMessage);
-                // Emit the message
-                self.emit("message", emitBuffer, self);
-              } catch (err) {
-                var errorObject = {err:"socketHandler", trace:err, bin:self.buffer, parseState:{
-                  sizeOfMessage:sizeOfMessage,
-                  bytesRead:self.bytesRead,
-                  stubBuffer:self.stubBuffer}};
-                if(self.logger != null && self.logger.doError) self.logger.error("parseError", errorObject);
-                // We got a parse Error fire it off then keep going
-                self.emit("parseError", errorObject, self);
-              }
-
-            }
-          } else {
-            // Create a buffer that contains the space for the non-complete message
-            self.stubBuffer = new Buffer(data.length)
-            // Copy the data to the stub buffer
-            data.copy(self.stubBuffer, 0);
-            // Exit parsing loop
-            data = new Buffer(0);
-          }
-        }
-      }
-    }
-  }
-}
-
-var endHandler = function(self) {
-  return function() {
-    // Set connected to false
-    self.connected = false;
-    // Emit end event
-    self.emit("end", {err: 'connection received Fin packet from [' + self.socketOptions.host + ':' + self.socketOptions.port + ']'}, self);
-  }
-}
-
-var timeoutHandler = function(self) {
-  return function() {
-    // Set connected to false
-    self.connected = false;
-    // Emit timeout event
-    self.emit("timeout", {err: 'connection to [' + self.socketOptions.host + ':' + self.socketOptions.port + '] timed out'}, self);
-  }
-}
-
-var drainHandler = function(self) {
-  return function() {
-  }
-}
-
-var errorHandler = function(self) {
-  return function(err) {
-    self.connection.destroy();
-    // Set connected to false
-    self.connected = false;
-    // Emit error
-    self.emit("error", {err: 'failed to connect to [' + self.socketOptions.host + ':' + self.socketOptions.port + ']'}, self);
-  }
-}
-
-var closeHandler = function(self) {
-  return function(hadError) {
-    // If we have an error during the connection phase
-    if(hadError && !self.connected) {
-      // Set disconnected
-      self.connected = false;
-      // Emit error
-      self.emit("error", {err: 'failed to connect to [' + self.socketOptions.host + ':' + self.socketOptions.port + ']'}, self);
-    } else {
-      // Set disconnected
-      self.connected = false;
-      // Emit close
-      self.emit("close", {err: 'connection closed to [' + self.socketOptions.host + ':' + self.socketOptions.port + ']'}, self);
-    }
-  }
-}
-
-// Some basic defaults
-Connection.DEFAULT_PORT = 27017;
-
-
-
-
-
-
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_pool.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_pool.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_pool.js
deleted file mode 100644
index 3d9e7c5..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_pool.js
+++ /dev/null
@@ -1,295 +0,0 @@
-var utils = require('./connection_utils'),
-  inherits = require('util').inherits,
-  net = require('net'),
-  timers = require('timers'),
-  EventEmitter = require('events').EventEmitter,
-  inherits = require('util').inherits,
-  MongoReply = require("../responses/mongo_reply").MongoReply,
-  Connection = require("./connection").Connection;
-
-// Set processor, setImmediate if 0.10 otherwise nextTick
-var processor = require('../utils').processor();
-
-var ConnectionPool = exports.ConnectionPool = function(host, port, poolSize, bson, socketOptions) {
-  if(typeof host !== 'string') {
-    throw new Error("host must be specified [" + host + "]");
-  }
-
-  // Set up event emitter
-  EventEmitter.call(this);
-
-  // Keep all options for the socket in a specific collection allowing the user to specify the
-  // Wished upon socket connection parameters
-  this.socketOptions = typeof socketOptions === 'object' ? socketOptions : {};
-  this.socketOptions.host = host;
-  this.socketOptions.port = port;
-  this.socketOptions.domainSocket = false;
-  this.bson = bson;
-  // PoolSize is always + 1 for special reserved "measurment" socket (like ping, stats etc)
-  this.poolSize = poolSize;
-  this.minPoolSize = Math.floor(this.poolSize / 2) + 1;
-
-  // Check if the host is a socket
-  if(host.match(/^\//)) {
-    this.socketOptions.domainSocket = true;
-  } else if(typeof port === 'string') {
-    try { 
-      port = parseInt(port, 10); 
-    } catch(err) { 
-      new Error("port must be specified or valid integer["  + port + "]"); 
-    }
-  } else if(typeof port !== 'number') {
-    throw new Error("port must be specified ["  + port + "]");
-  }
-
-  // Set default settings for the socket options
-  utils.setIntegerParameter(this.socketOptions, 'timeout', 0);
-  // Delay before writing out the data to the server
-  utils.setBooleanParameter(this.socketOptions, 'noDelay', true);
-  // Delay before writing out the data to the server
-  utils.setIntegerParameter(this.socketOptions, 'keepAlive', 0);
-  // Set the encoding of the data read, default is binary == null
-  utils.setStringParameter(this.socketOptions, 'encoding', null);
-  // Allows you to set a throttling bufferSize if you need to stop overflows
-  utils.setIntegerParameter(this.socketOptions, 'bufferSize', 0);
-
-  // Internal structures
-  this.openConnections = [];
-  // Assign connection id's
-  this.connectionId = 0;
-
-  // Current index for selection of pool connection
-  this.currentConnectionIndex = 0;
-  // The pool state
-  this._poolState = 'disconnected';
-  // timeout control
-  this._timeout = false;
-  // Time to wait between connections for the pool
-  this._timeToWait = 10;
-}
-
-inherits(ConnectionPool, EventEmitter);
-
-ConnectionPool.prototype.setMaxBsonSize = function(maxBsonSize) {
-  if(maxBsonSize == null){
-    maxBsonSize = Connection.DEFAULT_MAX_BSON_SIZE;
-  }
-
-  for(var i = 0; i < this.openConnections.length; i++) {
-    this.openConnections[i].maxBsonSize = maxBsonSize;
-    this.openConnections[i].maxBsonSettings.maxBsonSize = maxBsonSize;
-  }
-}
-
-ConnectionPool.prototype.setMaxMessageSizeBytes = function(maxMessageSizeBytes) {
-  if(maxMessageSizeBytes == null){
-    maxMessageSizeBytes = Connection.DEFAULT_MAX_MESSAGE_SIZE;
-  }
-
-  for(var i = 0; i < this.openConnections.length; i++) {
-    this.openConnections[i].maxMessageSizeBytes = maxMessageSizeBytes;
-    this.openConnections[i].maxBsonSettings.maxMessageSizeBytes = maxMessageSizeBytes;
-  }
-}
-
-// Start a function
-var _connect = function(_self) {
-  // return new function() {
-    // Create a new connection instance
-    var connection = new Connection(_self.connectionId++, _self.socketOptions);
-    // Set logger on pool
-    connection.logger = _self.logger;
-    // Connect handler
-    connection.on("connect", function(err, connection) {
-      // Add connection to list of open connections
-      _self.openConnections.push(connection);
-      // If the number of open connections is equal to the poolSize signal ready pool
-      if(_self.openConnections.length === _self.poolSize && _self._poolState !== 'disconnected') {
-        // Set connected
-        _self._poolState = 'connected';
-        // Emit pool ready
-        _self.emit("poolReady");
-      } else if(_self.openConnections.length < _self.poolSize) {
-        // Wait a little bit of time to let the close event happen if the server closes the connection
-        // so we don't leave hanging connections around
-        if(typeof _self._timeToWait == 'number') {
-          setTimeout(function() {
-            // If we are still connecting (no close events fired in between start another connection)
-            if(_self._poolState == 'connecting') {
-              _connect(_self);
-            }
-          }, _self._timeToWait);
-        } else {
-          processor(function() {
-            // If we are still connecting (no close events fired in between start another connection)
-            if(_self._poolState == 'connecting') {
-              _connect(_self);
-            }
-          });
-        }
-      }
-    });
-
-    var numberOfErrors = 0
-
-    // Error handler
-    connection.on("error", function(err, connection, error_options) {
-      numberOfErrors++;
-      // If we are already disconnected ignore the event
-      if(_self._poolState != 'disconnected' && _self.listeners("error").length > 0) {
-        _self.emit("error", err, connection, error_options);
-      }
-
-      // Close the connection
-      connection.close();
-      // Set pool as disconnected
-      _self._poolState = 'disconnected';
-      // Stop the pool
-      _self.stop();
-    });
-
-    // Close handler
-    connection.on("close", function() {
-      // If we are already disconnected ignore the event
-      if(_self._poolState !== 'disconnected' && _self.listeners("close").length > 0) {
-        _self.emit("close");
-      }
-
-      // Set disconnected
-      _self._poolState = 'disconnected';
-      // Stop
-      _self.stop();
-    });
-
-    // Timeout handler
-    connection.on("timeout", function(err, connection) {
-      // If we are already disconnected ignore the event
-      if(_self._poolState !== 'disconnected' && _self.listeners("timeout").length > 0) {
-        _self.emit("timeout", err);
-      }
-
-      // Close the connection
-      connection.close();
-      // Set disconnected
-      _self._poolState = 'disconnected';
-      _self.stop();
-    });
-
-    // Parse error, needs a complete shutdown of the pool
-    connection.on("parseError", function() {
-      // If we are already disconnected ignore the event
-      if(_self._poolState !== 'disconnected' && _self.listeners("parseError").length > 0) {
-        _self.emit("parseError", new Error("parseError occured"));
-      }
-
-      // Set disconnected
-      _self._poolState = 'disconnected';
-      _self.stop();
-    });
-
-    connection.on("message", function(message) {
-      _self.emit("message", message);
-    });
-
-    // Start connection in the next tick
-    connection.start();
-  // }();
-}
-
-
-// Start method, will throw error if no listeners are available
-// Pass in an instance of the listener that contains the api for
-// finding callbacks for a given message etc.
-ConnectionPool.prototype.start = function() {
-  var markerDate = new Date().getTime();
-  var self = this;
-
-  if(this.listeners("poolReady").length == 0) {
-    throw "pool must have at least one listener ready that responds to the [poolReady] event";
-  }
-
-  // Set pool state to connecting
-  this._poolState = 'connecting';
-  this._timeout = false;
-
-  _connect(self);
-}
-
-// Restart a connection pool (on a close the pool might be in a wrong state)
-ConnectionPool.prototype.restart = function() {
-  // Close all connections
-  this.stop(false);
-  // Now restart the pool
-  this.start();
-}
-
-// Stop the connections in the pool
-ConnectionPool.prototype.stop = function(removeListeners) {
-  removeListeners = removeListeners == null ? true : removeListeners;
-  // Set disconnected
-  this._poolState = 'disconnected';
-
-  // Clear all listeners if specified
-  if(removeListeners) {
-    this.removeAllEventListeners();
-  }
-
-  // Close all connections
-  for(var i = 0; i < this.openConnections.length; i++) {
-    this.openConnections[i].close();
-  }
-
-  // Clean up
-  this.openConnections = [];
-}
-
-// Check the status of the connection
-ConnectionPool.prototype.isConnected = function() {
-  // return this._poolState === 'connected';
-  return this.openConnections.length > 0 && this.openConnections[0].isConnected();
-}
-
-// Checkout a connection from the pool for usage, or grab a specific pool instance
-ConnectionPool.prototype.checkoutConnection = function(id) {
-  var index = (this.currentConnectionIndex++ % (this.openConnections.length));
-  var connection = this.openConnections[index];
-  return connection;
-}
-
-ConnectionPool.prototype.getAllConnections = function() {
-  return this.openConnections;
-}
-
-// Remove all non-needed event listeners
-ConnectionPool.prototype.removeAllEventListeners = function() {
-  this.removeAllListeners("close");
-  this.removeAllListeners("error");
-  this.removeAllListeners("timeout");
-  this.removeAllListeners("connect");
-  this.removeAllListeners("end");
-  this.removeAllListeners("parseError");
-  this.removeAllListeners("message");
-  this.removeAllListeners("poolReady");
-}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_utils.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_utils.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_utils.js
deleted file mode 100644
index 5910924..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/connection_utils.js
+++ /dev/null
@@ -1,23 +0,0 @@
-exports.setIntegerParameter = function(object, field, defaultValue) {
-  if(object[field] == null) {
-    object[field] = defaultValue;
-  } else if(typeof object[field] !== "number" && object[field] !== parseInt(object[field], 10)) {
-    throw "object field [" + field + "] must be a numeric integer value, attempted to set to [" + object[field] + "] type of [" + typeof object[field] + "]";
-  }
-}
-
-exports.setBooleanParameter = function(object, field, defaultValue) {
-  if(object[field] == null) {
-    object[field] = defaultValue;
-  } else if(typeof object[field] !== "boolean") {
-    throw "object field [" + field + "] must be a boolean value, attempted to set to [" + object[field] + "] type of [" + typeof object[field] + "]";
-  }
-}
-
-exports.setStringParameter = function(object, field, defaultValue) {
-  if(object[field] == null) {
-    object[field] = defaultValue;
-  } else if(typeof object[field] !== "string") {
-    throw "object field [" + field + "] must be a string value, attempted to set to [" + object[field] + "] type of [" + typeof object[field] + "]";
-  }
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/mongos.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/mongos.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/mongos.js
deleted file mode 100644
index 01a9c32..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/mongos.js
+++ /dev/null
@@ -1,537 +0,0 @@
-var ReadPreference = require('./read_preference').ReadPreference
-  , Base = require('./base').Base
-  , Server = require('./server').Server
-  , format = require('util').format
-  , timers = require('timers')
-  , utils = require('../utils')
-  , inherits = require('util').inherits;
-
-// Set processor, setImmediate if 0.10 otherwise nextTick
-var processor = require('../utils').processor();
-
-/**
- * Mongos constructor provides a connection to a mongos proxy including failover to additional servers
- *
- * Options
- *  - **socketOptions** {Object, default:null}, an object containing socket options to use (noDelay:(boolean), keepAlive:(number), connectTimeoutMS:(number), socketTimeoutMS:(number))
- *  - **ha** {Boolean, default:true}, turn on high availability, attempts to reconnect to down proxies
- *  - **haInterval** {Number, default:2000}, time between each replicaset status check.
- *
- * @class Represents a Mongos connection with failover to backup proxies
- * @param {Array} list of mongos server objects
- * @param {Object} [options] additional options for the mongos connection
- */
-var Mongos = function Mongos(servers, options) {
-  // Set up basic
-  if(!(this instanceof Mongos))
-    return new Mongos(servers, options);
-
-  // Set up event emitter
-  Base.call(this);
-
-  // Throw error on wrong setup
-  if(servers == null || !Array.isArray(servers) || servers.length == 0)
-    throw new Error("At least one mongos proxy must be in the array");
-
-  // Ensure we have at least an empty options object
-  this.options = options == null ? {} : options;
-  // Set default connection pool options
-  this.socketOptions = this.options.socketOptions != null ? this.options.socketOptions : {};
-  // Enabled ha
-  this.haEnabled = this.options['ha'] == null ? true : this.options['ha'];
-  this._haInProgress = false;
-  // How often are we checking for new servers in the replicaset
-  this.mongosStatusCheckInterval = this.options['haInterval'] == null ? 1000 : this.options['haInterval'];
-  // Save all the server connections
-  this.servers = servers;
-  // Servers we need to attempt reconnect with
-  this.downServers = {};
-  // Servers that are up
-  this.upServers = {};
-  // Up servers by ping time
-  this.upServersByUpTime = {};
-  // Emit open setup
-  this.emitOpen = this.options.emitOpen || true;
-  // Just contains the current lowest ping time and server
-  this.lowestPingTimeServer = null;
-  this.lowestPingTime = 0;
-  // Connection timeout
-  this._connectTimeoutMS = this.socketOptions.connectTimeoutMS
-    ? this.socketOptions.connectTimeoutMS
-    : 1000;
-
-  // Add options to servers
-  for(var i = 0; i < this.servers.length; i++) {
-    var server = this.servers[i];
-    server._callBackStore = this._callBackStore;
-    server.auto_reconnect = false;
-    // Default empty socket options object
-    var socketOptions = {host: server.host, port: server.port};
-    // If a socket option object exists clone it
-    if(this.socketOptions != null) {
-      var keys = Object.keys(this.socketOptions);
-      for(var k = 0; k < keys.length;k++) socketOptions[keys[i]] = this.socketOptions[keys[i]];
-    }
-
-    // Set socket options
-    server.socketOptions = socketOptions;
-  }
-
-  // Allow setting the socketTimeoutMS on all connections
-  // to work around issues such as secondaries blocking due to compaction
-  utils.setSocketTimeoutProperty(this, this.socketOptions);  
-}
-
-/**
- * @ignore
- */
-inherits(Mongos, Base);
-
-/**
- * @ignore
- */
-Mongos.prototype.isMongos = function() {
-  return true;
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.connect = function(db, options, callback) {
-  if('function' === typeof options) callback = options, options = {};
-  if(options == null) options = {};
-  if(!('function' === typeof callback)) callback = null;
-  var self = this;
-
-  // Keep reference to parent
-  this.db = db;
-  // Set server state to connecting
-  this._serverState = 'connecting';
-  // Number of total servers that need to initialized (known servers)
-  this._numberOfServersLeftToInitialize = this.servers.length;  
-  // Connect handler
-  var connectHandler = function(_server) {
-    return function(err, result) {
-      self._numberOfServersLeftToInitialize = self._numberOfServersLeftToInitialize - 1;
-
-      // Add the server to the list of servers that are up
-      if(!err) {
-        self.upServers[format("%s:%s", _server.host, _server.port)] = _server;
-      }
-
-      // We are done connecting
-      if(self._numberOfServersLeftToInitialize == 0) {
-        // Start ha function if it exists
-        if(self.haEnabled) {
-          // Setup the ha process
-          if(self._replicasetTimeoutId != null) clearInterval(self._replicasetTimeoutId);
-          self._replicasetTimeoutId = setInterval(self.mongosCheckFunction, self.mongosStatusCheckInterval);
-        }
-
-        // Set the mongos to connected
-        self._serverState = "connected";
-
-        // Emit the open event
-        if(self.emitOpen)
-          self._emitAcrossAllDbInstances(self, null, "open", null, null, null);        
-
-        self._emitAcrossAllDbInstances(self, null, "fullsetup", null, null, null);      
-        // Callback
-        callback(null, self.db);
-      }
-    }
-  };
-
-  // Error handler
-  var errorOrCloseHandler = function(_server) {
-    return function(err, result) {
-      // Emit left event, signaling mongos left the ha
-      self.emit('left', 'mongos', _server);
-      // Execute all the callbacks with errors
-      self.__executeAllCallbacksWithError(err);
-      // Check if we have the server
-      var found = false;
-      
-      // Get the server name
-      var server_name = format("%s:%s", _server.host, _server.port);
-      // Add the downed server
-      self.downServers[server_name] = _server;
-      // Remove the current server from the list
-      delete self.upServers[server_name]; 
-
-      // Emit close across all the attached db instances
-      if(Object.keys(self.upServers).length == 0) {
-        self._emitAcrossAllDbInstances(self, null, "close", new Error("mongos disconnected, no valid proxies contactable over tcp"), null, null);
-      }
-    }
-  }
-
-  // Mongo function
-  this.mongosCheckFunction = function() {
-    // Set as not waiting for check event 
-    self._haInProgress = true;
-    
-    // Servers down
-    var numberOfServersLeft = Object.keys(self.downServers).length;
-    
-    // Check downed servers
-    if(numberOfServersLeft > 0) {
-      for(var name in self.downServers) {
-        // Pop a downed server      
-        var downServer = self.downServers[name];
-        // Set up the connection options for a Mongos
-        var options = {
-          auto_reconnect: false,
-          returnIsMasterResults: true,
-          slaveOk: true,
-          poolSize: downServer.poolSize,
-          socketOptions: { 
-            connectTimeoutMS: self._connectTimeoutMS,
-            socketTimeoutMS: self._socketTimeoutMS
-          }          
-        }
-
-        // Create a new server object
-        var newServer = new Server(downServer.host, downServer.port, options);
-        // Setup the connection function
-        var connectFunction = function(_db, _server, _options, _callback)  {
-          return function() {
-            // Attempt to connect
-            _server.connect(_db, _options, function(err, result) {
-              numberOfServersLeft = numberOfServersLeft - 1;
-
-              if(err) {
-                return _callback(err, _server);
-              } else {                
-                // Set the new server settings
-                _server._callBackStore = self._callBackStore;
-
-                // Add server event handlers
-                _server.on("close", errorOrCloseHandler(_server));
-                _server.on("timeout", errorOrCloseHandler(_server));
-                _server.on("error", errorOrCloseHandler(_server));
-                
-                // Get a read connection
-                var _connection = _server.checkoutReader();
-                // Get the start time
-                var startTime = new Date().getTime();
-                
-                // Execute ping command to mark each server with the expected times
-                self.db.command({ping:1}
-                  , {failFast:true, connection:_connection}, function(err, result) {
-                  // Get the start time
-                  var endTime = new Date().getTime();
-                  // Mark the server with the ping time
-                  _server.runtimeStats['pingMs'] = endTime - startTime;
-                  // Execute any waiting reads
-                  self._commandsStore.execute_writes();   
-                  self._commandsStore.execute_queries();   
-                  // Callback
-                  return _callback(null, _server);
-                });
-              }
-            });
-          }
-        } 
-
-        // Attempt to connect to the database
-        connectFunction(self.db, newServer, options, function(err, _server) {
-          // If we have an error
-          if(err) {
-            self.downServers[format("%s:%s", _server.host, _server.port)] = _server;
-          }
-
-          // Connection function
-          var connectionFunction = function(_auth, _connection, _callback) {
-            var pending = _auth.length();
-
-            for(var j = 0; j < pending; j++) {
-              // Get the auth object
-              var _auth = _auth.get(j);
-              // Unpack the parameter
-              var username = _auth.username;
-              var password = _auth.password;
-              var options = { 
-                  authMechanism: _auth.authMechanism
-                , authSource: _auth.authdb
-                , connection: _connection 
-              };
-
-              // If we have changed the service name
-              if(_auth.gssapiServiceName) 
-                options.gssapiServiceName = _auth.gssapiServiceName;
-
-              // Hold any error
-              var _error = null;
-              // Authenticate against the credentials
-              self.db.authenticate(username, password, options, function(err, result) {
-                _error = err != null ? err : _error;
-                // Adjust the pending authentication
-                pending = pending - 1;
-                // Finished up
-                if(pending == 0) _callback(_error ? _error : null, _error ? false : true);
-              });
-            }
-          }
-
-          // Run auths against the connections
-          if(self.auth.length() > 0) {
-            var connections = _server.allRawConnections();
-            var pendingAuthConn = connections.length;
-
-            // No connections we are done
-            if(connections.length == 0) {
-              // Set ha done
-              if(numberOfServersLeft == 0) {
-                self._haInProgress = false;
-              }              
-            }
-
-            // Final error object
-            var finalError = null;
-            // Go over all the connections
-            for(var j = 0; j < connections.length; j++) {
-              
-              // Execute against all the connections
-              connectionFunction(self.auth, connections[j], function(err, result) {
-                // Pending authentication
-                pendingAuthConn = pendingAuthConn - 1 ;
-
-                // Save error if any
-                finalError = err ? err : finalError;
-
-                // If we are done let's finish up
-                if(pendingAuthConn == 0) {
-                  // Set ha done
-                  if(numberOfServersLeft == 0) {
-                    self._haInProgress = false;
-                  }
-
-                  if(!err) {
-                    add_server(self, _server);
-                  }
-
-                  // Execute any waiting reads
-                  self._commandsStore.execute_writes();   
-                  self._commandsStore.execute_queries();                  
-                }
-              });
-            }
-          } else {
-            if(!err) {
-              add_server(self, _server);
-            }
-
-            // Set ha done
-            if(numberOfServersLeft == 0) {
-              self._haInProgress = false;
-              // Execute any waiting reads
-              self._commandsStore.execute_writes();   
-              self._commandsStore.execute_queries();   
-            }
-          }
-        })();
-      }
-    } else {
-      self._haInProgress = false;
-    }
-  }
-
-  // Connect all the server instances
-  for(var i = 0; i < this.servers.length; i++) {
-    // Get the connection
-    var server = this.servers[i];
-    server.mongosInstance = this;
-    // Add server event handlers
-    server.on("close", errorOrCloseHandler(server));
-    server.on("timeout", errorOrCloseHandler(server));
-    server.on("error", errorOrCloseHandler(server));
-    
-    // Configuration
-    var options = {
-      slaveOk: true,
-      poolSize: server.poolSize,
-      socketOptions: { connectTimeoutMS: self._connectTimeoutMS },
-      returnIsMasterResults: true
-    }        
-
-    // Connect the instance
-    server.connect(self.db, options, connectHandler(server));
-  }
-}
-
-/**
- * @ignore
- * Add a server to the list of up servers and sort them by ping time
- */
-var add_server = function(self, _server) {
-  // Emit a new server joined
-  self.emit('joined', "mongos", null, _server);
-  // Get the server url
-  var server_key = format("%s:%s", _server.host, _server.port);
-  // Push to list of valid server
-  self.upServers[server_key] = _server;
-  // Remove the server from the list of downed servers
-  delete self.downServers[server_key];              
-
-  // Sort the keys by ping time
-  var keys = Object.keys(self.upServers);
-  var _upServersSorted = {};
-  var _upServers = []
-  
-  // Get all the servers
-  for(var name in self.upServers) {
-    _upServers.push(self.upServers[name]);
-  }
-
-  // Sort all the server
-  _upServers.sort(function(a, b) {
-    return a.runtimeStats['pingMs'] > b.runtimeStats['pingMs'];
-  });
-
-  // Rebuild the upServer
-  for(var i = 0; i < _upServers.length; i++) {
-    _upServersSorted[format("%s:%s", _upServers[i].host, _upServers[i].port)] = _upServers[i];
-  }
-
-  // Set the up servers
-  self.upServers = _upServersSorted;
-}
-
-/**
- * @ignore
- * Just return the currently picked active connection
- */
-Mongos.prototype.allServerInstances = function() {
-  return this.servers;
-}
-
-/**
- * Always ourselves
- * @ignore
- */
-Mongos.prototype.setReadPreference = function() {}
-
-/**
- * @ignore
- */
-Mongos.prototype.allRawConnections = function() {
-  // Neeed to build a complete list of all raw connections, start with master server
-  var allConnections = [];
-  // Get all connected connections
-  for(var name in this.upServers) {
-    allConnections = allConnections.concat(this.upServers[name].allRawConnections());
-  }
-  // Return all the conections
-  return allConnections;
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.isConnected = function() {
-  return Object.keys(this.upServers).length > 0;
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.isAutoReconnect = function() {
-  return true;
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.canWrite = Mongos.prototype.isConnected;
-
-/**
- * @ignore
- */
-Mongos.prototype.canRead = Mongos.prototype.isConnected;
-
-/**
- * @ignore
- */
-Mongos.prototype.isDestroyed = function() {
-  return this._serverState == 'destroyed';
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.checkoutWriter = function() {
-  // Checkout a writer
-  var keys = Object.keys(this.upServers);
-  // console.dir("============================ checkoutWriter :: " + keys.length)
-  if(keys.length == 0) return null;
-  // console.log("=============== checkoutWriter :: " + this.upServers[keys[0]].checkoutWriter().socketOptions.port)
-  return this.upServers[keys[0]].checkoutWriter();
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.checkoutReader = function(read) {
-  // console.log("=============== checkoutReader :: read :: " + read);
-  // If read is set to null default to primary
-  read = read || 'primary'
-  // If we have a read preference object unpack it
-  if(read != null && typeof read == 'object' && read['_type'] == 'ReadPreference') {
-    // Validate if the object is using a valid mode
-    if(!read.isValid()) throw new Error("Illegal readPreference mode specified, " + read.mode);
-  } else if(!ReadPreference.isValid(read)) {
-    throw new Error("Illegal readPreference mode specified, " + read);
-  }
-
-  // Checkout a writer
-  var keys = Object.keys(this.upServers);
-  if(keys.length == 0) return null;
-  // console.log("=============== checkoutReader :: " + this.upServers[keys[0]].checkoutWriter().socketOptions.port)
-  // console.dir(this._commandsStore.commands)
-  return this.upServers[keys[0]].checkoutWriter();
-}
-
-/**
- * @ignore
- */
-Mongos.prototype.close = function(callback) {
-  var self = this;
-  // Set server status as disconnected
-  this._serverState = 'destroyed';
-  // Number of connections to close
-  var numberOfConnectionsToClose = self.servers.length;
-  // If we have a ha process running kill it
-  if(self._replicasetTimeoutId != null) clearInterval(self._replicasetTimeoutId);
-  self._replicasetTimeoutId = null;
-  
-  // Emit close event
-  processor(function() {
-    self._emitAcrossAllDbInstances(self, null, "close", null, null, true)    
-  });
-
-  // Flush out any remaining call handlers
-  self._flushAllCallHandlers(utils.toError("Connection Closed By Application"));
-
-  // Close all the up servers
-  for(var name in this.upServers) {
-    this.upServers[name].close(function(err, result) {
-      numberOfConnectionsToClose = numberOfConnectionsToClose - 1;
-
-      // Callback if we have one defined
-      if(numberOfConnectionsToClose == 0 && typeof callback == 'function') {
-        callback(null);
-      }
-    });
-  }
-}
-
-/**
- * @ignore
- * Return the used state
- */
-Mongos.prototype._isUsed = function() {
-  return this._used;
-}
-
-exports.Mongos = Mongos;
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/read_preference.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/read_preference.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/read_preference.js
deleted file mode 100644
index 6845171..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/read_preference.js
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * A class representation of the Read Preference.
- *
- * Read Preferences
- *  - **ReadPreference.PRIMARY**, Read from primary only. All operations produce an error (throw an exception where applicable) if primary is unavailable. Cannot be combined with tags (This is the default.).
- *  - **ReadPreference.PRIMARY_PREFERRED**, Read from primary if available, otherwise a secondary.
- *  - **ReadPreference.SECONDARY**, Read from secondary if available, otherwise error.
- *  - **ReadPreference.SECONDARY_PREFERRED**, Read from a secondary if available, otherwise read from the primary.
- *  - **ReadPreference.NEAREST**, All modes read from among the nearest candidates, but unlike other modes, NEAREST will include both the primary and all secondaries in the random selection.
- *
- * @class Represents a Read Preference.
- * @param {String} the read preference type
- * @param {Object} tags
- * @return {ReadPreference}
- */
-var ReadPreference = function(mode, tags) {
-  if(!(this instanceof ReadPreference))
-    return new ReadPreference(mode, tags);
-  this._type = 'ReadPreference';
-  this.mode = mode;
-  this.tags = tags;
-}
-
-/**
- * @ignore
- */
-ReadPreference.isValid = function(_mode) {
-  return (_mode == ReadPreference.PRIMARY || _mode == ReadPreference.PRIMARY_PREFERRED
-    || _mode == ReadPreference.SECONDARY || _mode == ReadPreference.SECONDARY_PREFERRED
-    || _mode == ReadPreference.NEAREST
-    || _mode == true || _mode == false);
-}
-
-/**
- * @ignore
- */
-ReadPreference.prototype.isValid = function(mode) {
-  var _mode = typeof mode == 'string' ? mode : this.mode;
-  return ReadPreference.isValid(_mode);
-}
-
-/**
- * @ignore
- */
-ReadPreference.prototype.toObject = function() {
-  var object = {mode:this.mode};
-
-  if(this.tags != null) {
-    object['tags'] = this.tags;
-  }
-
-  return object;
-}
-
-/**
- * @ignore
- */
-ReadPreference.PRIMARY = 'primary';
-ReadPreference.PRIMARY_PREFERRED = 'primaryPreferred';
-ReadPreference.SECONDARY = 'secondary';
-ReadPreference.SECONDARY_PREFERRED = 'secondaryPreferred';
-ReadPreference.NEAREST = 'nearest'
-
-/**
- * @ignore
- */
-exports.ReadPreference  = ReadPreference;
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/ha.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/ha.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/ha.js
deleted file mode 100644
index e3e8f32..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/ha.js
+++ /dev/null
@@ -1,414 +0,0 @@
-var DbCommand = require('../../commands/db_command').DbCommand
-  , format = require('util').format;
-
-var HighAvailabilityProcess = function(replset, options) {  
-  this.replset = replset;
-  this.options = options;
-  this.server = null;
-  this.state = HighAvailabilityProcess.INIT;
-  this.selectedIndex = 0;
-}
-
-HighAvailabilityProcess.INIT = 'init';
-HighAvailabilityProcess.RUNNING = 'running';
-HighAvailabilityProcess.STOPPED = 'stopped';
-
-HighAvailabilityProcess.prototype.start = function() {  
-  var self = this;
-  if(this.replset._state 
-    && Object.keys(this.replset._state.addresses).length == 0) {
-    if(this.server) this.server.close();
-    this.state = HighAvailabilityProcess.STOPPED;
-    return;      
-  }
-
-  if(this.server) this.server.close();
-  // Start the running
-  this._haProcessInProcess = false;
-  this.state = HighAvailabilityProcess.RUNNING;
-  
-  // Get all possible reader servers
-  var candidate_servers = this.replset._state.getAllReadServers();
-  if(candidate_servers.length == 0) {
-    return;
-  }
-
-  // Select a candidate server for the connection
-  var server = candidate_servers[this.selectedIndex % candidate_servers.length];
-  this.selectedIndex = this.selectedIndex + 1;
-  
-  // Unpack connection options
-  var connectTimeoutMS = self.options.connectTimeoutMS || 10000;
-  var socketTimeoutMS = self.options.socketTimeoutMS || 30000;
-
-  // Just ensure we don't have a full cycle dependency
-  var Db = require('../../db').Db
-  var Server = require('../server').Server;
-
-  // Set up a new server instance
-  var newServer = new Server(server.host, server.port, {
-      auto_reconnect: false
-    , returnIsMasterResults: true
-    , poolSize: 1
-    , socketOptions: { 
-        connectTimeoutMS: connectTimeoutMS,
-        socketTimeoutMS: socketTimeoutMS,
-        keepAlive: 100
-      }
-    , ssl: this.options.ssl
-    , sslValidate: this.options.sslValidate
-    , sslCA: this.options.sslCA
-    , sslCert: this.options.sslCert
-    , sslKey: this.options.sslKey
-    , sslPass: this.options.sslPass
-  });
-
-  // Create new dummy db for app
-  self.db = new Db('local', newServer, {w:1});
-
-  // Set up the event listeners
-  newServer.once("error", _handle(this, newServer));
-  newServer.once("close", _handle(this, newServer));
-  newServer.once("timeout", _handle(this, newServer));
-  newServer.name = format("%s:%s", server.host, server.port);
-
-  // Let's attempt a connection over here
-  newServer.connect(self.db, function(err, result, _server) {
-    if(self.state == HighAvailabilityProcess.STOPPED) {
-      _server.close();
-    }
-
-    if(err) {
-      // Close the server
-      _server.close();
-      // Check if we can even do HA (is there anything running)
-      if(Object.keys(self.replset._state.addresses).length == 0) {
-        return;
-      }
-      
-      // Let's boot the ha timeout settings
-      setTimeout(function() {
-        self.start();
-      }, self.options.haInterval);
-    } else {
-      self.server = _server;
-      // Let's boot the ha timeout settings
-      setTimeout(_timeoutHandle(self), self.options.haInterval);
-    }
-  });
-}
-
-HighAvailabilityProcess.prototype.stop = function() {
-  this.state = HighAvailabilityProcess.STOPPED;
-  if(this.server) this.server.close();
-}
-
-var _timeoutHandle = function(self) {
-  return function() {
-    if(self.state == HighAvailabilityProcess.STOPPED) {
-      // Stop all server instances
-      for(var name in self.replset._state.addresses) {
-        self.replset._state.addresses[name].close();
-        delete self.replset._state.addresses[name];
-      }
-
-      // Finished pinging
-      return;
-    }
-
-    // If the server is connected
-    if(self.server.isConnected() && !self._haProcessInProcess) {
-      // Start HA process
-      self._haProcessInProcess = true;
-      // Execute is master command
-      self.db._executeQueryCommand(DbCommand.createIsMasterCommand(self.db), 
-          {failFast:true, connection: self.server.checkoutReader()}
-        , function(err, res) {
-          if(err) {
-            self.server.close();
-            return setTimeout(_timeoutHandle(self), self.options.haInterval);
-          }
-
-          // Master document
-          var master = res.documents[0];
-          var hosts = master.hosts || [];
-          var reconnect_servers = [];
-          var state = self.replset._state;
-
-          // We are in recovery mode, let's remove the current server
-          if(!master.ismaster 
-            && !master.secondary
-            && state.addresses[master.me]) {
-              self.server.close();
-              state.addresses[master.me].close();
-              delete state.secondaries[master.me];
-              return setTimeout(_timeoutHandle(self), self.options.haInterval);
-          }
-
-          // For all the hosts let's check that we have connections
-          for(var i = 0; i < hosts.length; i++) {
-            var host = hosts[i];
-            // Check if we need to reconnect to a server
-            if(state.addresses[host] == null) {
-              reconnect_servers.push(host);
-            } else if(state.addresses[host] && !state.addresses[host].isConnected()) {
-              state.addresses[host].close();
-              delete state.secondaries[host];
-              reconnect_servers.push(host);              
-            }
-
-            if((master.primary && state.master == null)
-              || (master.primary && state.master.name != master.primary)) {
-
-              // Locate the primary and set it
-              if(state.addresses[master.primary]) {
-                if(state.master) state.master.close();
-                delete state.secondaries[master.primary];
-                state.master = state.addresses[master.primary];
-              }
-              
-              // Set up the changes
-              if(state.master != null && state.master.isMasterDoc != null) {
-                state.master.isMasterDoc.ismaster = true;
-                state.master.isMasterDoc.secondary = false;                
-              } else if(state.master != null) {
-                state.master.isMasterDoc = master;
-                state.master.isMasterDoc.ismaster = true;
-                state.master.isMasterDoc.secondary = false;                
-              }
-
-              // Execute any waiting commands (queries or writes)
-              self.replset._commandsStore.execute_queries();
-              self.replset._commandsStore.execute_writes();   
-            }
-          }
-
-          // Let's reconnect to any server needed
-          if(reconnect_servers.length > 0) {
-            _reconnect_servers(self, reconnect_servers);  
-          } else {
-            self._haProcessInProcess = false
-            return setTimeout(_timeoutHandle(self), self.options.haInterval);
-          }
-      });
-    } else if(!self.server.isConnected()) {
-      setTimeout(function() {
-        return self.start();
-      }, self.options.haInterval);
-    } else {
-      setTimeout(_timeoutHandle(self), self.options.haInterval);
-    }
-  }
-}
-
-var _reconnect_servers = function(self, reconnect_servers) {
-  if(reconnect_servers.length == 0) {
-    self._haProcessInProcess = false    
-    return setTimeout(_timeoutHandle(self), self.options.haInterval);
-  }
-
-  // Unpack connection options
-  var connectTimeoutMS = self.options.connectTimeoutMS || 10000;
-  var socketTimeoutMS = self.options.socketTimeoutMS || 0;
-
-  // Server class
-  var Db = require('../../db').Db
-  var Server = require('../server').Server;
-  // Get the host
-  var host = reconnect_servers.shift();
-  // Split it up
-  var _host = host.split(":")[0];
-  var _port = parseInt(host.split(":")[1], 10);
-
-  // Set up a new server instance
-  var newServer = new Server(_host, _port, {
-      auto_reconnect: false
-    , returnIsMasterResults: true
-    , poolSize: self.options.poolSize
-    , socketOptions: { 
-        connectTimeoutMS: connectTimeoutMS,
-        socketTimeoutMS: socketTimeoutMS
-      }
-    , ssl: self.options.ssl
-    , sslValidate: self.options.sslValidate
-    , sslCA: self.options.sslCA
-    , sslCert: self.options.sslCert
-    , sslKey: self.options.sslKey
-    , sslPass: self.options.sslPass
-  });
-
-  // Create new dummy db for app
-  var db = new Db('local', newServer, {w:1});
-  var state = self.replset._state;
-
-  // Set up the event listeners
-  newServer.once("error", _repl_set_handler("error", self.replset, newServer));
-  newServer.once("close", _repl_set_handler("close", self.replset, newServer));
-  newServer.once("timeout", _repl_set_handler("timeout", self.replset, newServer));
-
-  // Set shared state
-  newServer.name = host;
-  newServer._callBackStore = self.replset._callBackStore;
-  newServer.replicasetInstance = self.replset;
-  newServer.enableRecordQueryStats(self.replset.recordQueryStats);
-
-  // Let's attempt a connection over here
-  newServer.connect(db, function(err, result, _server) {
-    if(self.state == HighAvailabilityProcess.STOPPED) {
-      _server.close();
-    }
-
-    // If we connected let's check what kind of server we have
-    if(!err) {
-      _apply_auths(self, db, _server, function(err, result) {
-        if(err) {
-          _server.close();
-          // Process the next server
-          return setTimeout(function() {
-            _reconnect_servers(self, reconnect_servers);  
-          }, self.options.haInterval);                      
-        }
-        var doc = _server.isMasterDoc;    
-        // Fire error on any unknown callbacks for this server
-        self.replset.__executeAllServerSpecificErrorCallbacks(_server.socketOptions.host, _server.socketOptions.port, err);    
-
-        if(doc.ismaster) {
-          // Emit primary added
-          self.replset.emit('joined', "primary", doc, _server);
-
-          // If it was a secondary remove it
-          if(state.secondaries[doc.me]) {
-            delete state.secondaries[doc.me];
-          }
-
-          // Override any server in list of addresses
-          state.addresses[doc.me] = _server;
-          // Set server as master
-          state.master = _server;     
-          // Execute any waiting writes
-          self.replset._commandsStore.execute_writes();   
-        } else if(doc.secondary) {
-          // Emit secondary added
-          self.replset.emit('joined', "secondary", doc, _server);
-          // Add the secondary to the state
-          state.secondaries[doc.me] = _server;
-          // Override any server in list of addresses
-          state.addresses[doc.me] = _server;
-          // Execute any waiting reads
-          self.replset._commandsStore.execute_queries();   
-        } else {
-          _server.close();
-        }
-
-        // Set any tags on the instance server
-        _server.name = doc.me;
-        _server.tags = doc.tags;
-        // Process the next server
-        setTimeout(function() {
-          _reconnect_servers(self, reconnect_servers);  
-        }, self.options.haInterval);            
-      });
-    } else {
-      _server.close();
-      self.replset.__executeAllServerSpecificErrorCallbacks(_server.socketOptions.host, _server.socketOptions.port, err);    
-
-      setTimeout(function() {
-        _reconnect_servers(self, reconnect_servers);  
-      }, self.options.haInterval);            
-    }
-  });
-}
-
-var _apply_auths = function(self, _db, _server, _callback) {
-  if(self.replset.auth.length() == 0) return _callback(null);
-  // Apply any authentication needed
-  if(self.replset.auth.length() > 0) {
-    var pending = self.replset.auth.length();
-    var connections = _server.allRawConnections();
-    var pendingAuthConn = connections.length;
-
-    // Connection function
-    var connectionFunction = function(_auth, _connection, __callback) {
-      var pending = _auth.length();
-
-      for(var j = 0; j < pending; j++) {
-        // Get the auth object
-        var _auth = _auth.get(j);
-        // Unpack the parameter
-        var username = _auth.username;
-        var password = _auth.password;
-        var options = { 
-            authMechanism: _auth.authMechanism            
-          , authSource: _auth.authdb
-          , connection: _connection 
-        };
-
-        // If we have changed the service name
-        if(_auth.gssapiServiceName) 
-          options.gssapiServiceName = _auth.gssapiServiceName;
-        
-        // Hold any error
-        var _error = null;
-        
-        // Authenticate against the credentials
-        _db.authenticate(username, password, options, function(err, result) {
-          _error = err != null ? err : _error;
-          // Adjust the pending authentication
-          pending = pending - 1;
-          // Finished up
-          if(pending == 0) __callback(_error ? _error : null, _error ? false : true);
-        });
-      }
-    }
-
-    // Final error object
-    var finalError = null;
-    // Iterate over all the connections
-    for(var i = 0; i < connections.length; i++) {
-      connectionFunction(self.replset.auth, connections[i], function(err, result) {
-        // Pending authentication
-        pendingAuthConn = pendingAuthConn - 1 ;
-
-        // Save error if any
-        finalError = err ? err : finalError;
-
-        // If we are done let's finish up
-        if(pendingAuthConn == 0) {
-          _callback(null);
-        }
-      });
-    }
-  }
-}
-
-var _handle = function(self, server) {
-  return function(err) {
-    server.close();    
-  }
-}
-
-var _repl_set_handler = function(event, self, server) {
-  var ReplSet = require('./repl_set').ReplSet;
-
-  return function(err, doc) {
-    server.close();
-
-    // The event happened to a primary
-    // Remove it from play
-    if(self._state.isPrimary(server)) {
-      self._state.master == null;
-      self._serverState = ReplSet.REPLSET_READ_ONLY;
-    } else if(self._state.isSecondary(server)) {
-      delete self._state.secondaries[server.name];
-    }
-
-    // Unpack variables
-    var host = server.socketOptions.host;
-    var port = server.socketOptions.port;
-
-    // Fire error on any unknown callbacks
-    self.__executeAllServerSpecificErrorCallbacks(host, port, err);    
-  }
-}
-
-exports.HighAvailabilityProcess = HighAvailabilityProcess;

http://git-wip-us.apache.org/repos/asf/incubator-apex-malhar/blob/e1a45507/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/options.js
----------------------------------------------------------------------
diff --git a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/options.js b/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/options.js
deleted file mode 100644
index a5658e3..0000000
--- a/web/demos/package/node_modules/mongodb/lib/mongodb/connection/repl_set/options.js
+++ /dev/null
@@ -1,126 +0,0 @@
-var PingStrategy = require('./strategies/ping_strategy').PingStrategy
-  , StatisticsStrategy = require('./strategies/statistics_strategy').StatisticsStrategy
-  , ReadPreference = require('../read_preference').ReadPreference;
-
-var Options = function(options) {
-  options = options || {};
-  this._options = options;
-  this.ha = options.ha || true;
-  this.haInterval = options.haInterval || 2000;
-  this.reconnectWait = options.reconnectWait || 1000;
-  this.retries = options.retries || 30;
-  this.rs_name = options.rs_name;
-  this.socketOptions = options.socketOptions || {};
-  this.readPreference = options.readPreference;
-  this.readSecondary = options.read_secondary;
-  this.poolSize = options.poolSize == null ? 5 : options.poolSize;
-  this.strategy = options.strategy || 'ping';
-  this.secondaryAcceptableLatencyMS = options.secondaryAcceptableLatencyMS || 15;
-  this.connectArbiter = options.connectArbiter || false;
-  this.connectWithNoPrimary = options.connectWithNoPrimary || false;
-  this.logger = options.logger;
-  this.ssl = options.ssl || false;
-  this.sslValidate = options.sslValidate || false;
-  this.sslCA = options.sslCA;
-  this.sslCert = options.sslCert;
-  this.sslKey = options.sslKey;
-  this.sslPass = options.sslPass;
-  this.emitOpen = options.emitOpen || true;
-}
-
-Options.prototype.init = function() {
-  if(this.sslValidate && (!Array.isArray(this.sslCA) || this.sslCA.length == 0)) {
-    throw new Error("The driver expects an Array of CA certificates in the sslCA parameter when enabling sslValidate");
-  }  
-
-  // Make sure strategy is one of the two allowed
-  if(this.strategy != null && (this.strategy != 'ping' && this.strategy != 'statistical' && this.strategy != 'none')) 
-      throw new Error("Only ping or statistical strategies allowed");    
-  
-  if(this.strategy == null) this.strategy = 'ping';
-  
-  // Set logger if strategy exists
-  if(this.strategyInstance) this.strategyInstance.logger = this.logger;
-
-  // Unpack read Preference
-  var readPreference = this.readPreference;
-  // Validate correctness of Read preferences
-  if(readPreference != null) {
-    if(readPreference != ReadPreference.PRIMARY && readPreference != ReadPreference.PRIMARY_PREFERRED
-      && readPreference != ReadPreference.SECONDARY && readPreference != ReadPreference.SECONDARY_PREFERRED
-      && readPreference != ReadPreference.NEAREST && typeof readPreference != 'object' && readPreference['_type'] != 'ReadPreference') {
-      throw new Error("Illegal readPreference mode specified, " + readPreference);
-    }
-
-    this.readPreference = readPreference;
-  } else {
-    this.readPreference = null;
-  } 
-
-     // Ensure read_secondary is set correctly
-  if(this.readSecondary != null)
-    this.readSecondary = this.readPreference == ReadPreference.PRIMARY 
-        || this.readPreference == false  
-        || this.readPreference == null ? false : true;
-
-  // Ensure correct slave set
-  if(this.readSecondary) this.slaveOk = true;
-
-  // Set up logger if any set
-  this.logger = this.logger != null
-    && (typeof this.logger.debug == 'function')
-    && (typeof this.logger.error == 'function')
-    && (typeof this.logger.debug == 'function')
-      ? this.logger : {error:function(message, object) {}, log:function(message, object) {}, debug:function(message, object) {}};  
-
-  // Connection timeout
-  this.connectTimeoutMS = this.socketOptions.connectTimeoutMS
-    ? this.socketOptions.connectTimeoutMS
-    : 1000;
-
-  // Socket connection timeout
-  this.socketTimeoutMS = this.socketOptions.socketTimeoutMS
-    ? this.socketOptions.socketTimeoutMS
-    : 30000;
-}
-
-Options.prototype.decorateAndClean = function(servers, callBackStore) {
-  var self = this;
-
-  // var de duplicate list
-  var uniqueServers = {};
-  // De-duplicate any servers in the seed list
-  for(var i = 0; i < servers.length; i++) {
-    var server = servers[i];
-    // If server does not exist set it
-    if(uniqueServers[server.host + ":" + server.port] == null) {
-      uniqueServers[server.host + ":" + server.port] = server;
-    }
-  }
-
-  // Let's set the deduplicated list of servers
-  var finalServers = [];
-  // Add the servers
-  for(var key in uniqueServers) {
-    finalServers.push(uniqueServers[key]);
-  }
-
-  finalServers.forEach(function(server) {
-    // Ensure no server has reconnect on
-    server.options.auto_reconnect = false;
-    // Set up ssl options
-    server.ssl = self.ssl;
-    server.sslValidate = self.sslValidate;
-    server.sslCA = self.sslCA;
-    server.sslCert = self.sslCert;
-    server.sslKey = self.sslKey;
-    server.sslPass = self.sslPass;
-    server.poolSize = self.poolSize;
-    // Set callback store
-    server._callBackStore = callBackStore;
-  });
-
-  return finalServers;
-}
-
-exports.Options = Options;