4 * Creates a new MongoError
7 * @param {string} message The error message
8 * @return {MongoError} A MongoError instance
10 function MongoError(message) {
11 this.name = 'MongoError';
12 this.message = message;
13 Error.captureStackTrace(this, MongoError);
17 * Creates a new MongoError object
19 * @param {object} options The error options
20 * @return {MongoError} A MongoError instance
22 MongoError.create = function(options) {
25 if(options instanceof Error) {
26 err = new MongoError(options.message);
27 err.stack = options.stack;
28 } else if(typeof options == 'string') {
29 err = new MongoError(options);
31 err = new MongoError(options.message || options.errmsg || options.$err || "n/a");
33 for(var name in options) {
34 err[name] = options[name];
41 // Extend JavaScript error
42 MongoError.prototype = new Error;
44 module.exports = MongoError;