|
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- 'use strict';
-
- var BSON = require('bson');
- var require_optional = require('require_optional');
- const EJSON = require('./lib/utils').retrieveEJSON();
-
- try {
- // Attempt to grab the native BSON parser
- var BSONNative = require_optional('bson-ext');
- // If we got the native parser, use it instead of the
- // Javascript one
- if (BSONNative) {
- BSON = BSONNative;
- }
- } catch (err) {} // eslint-disable-line
-
- module.exports = {
- // Errors
- MongoError: require('./lib/error').MongoError,
- MongoNetworkError: require('./lib/error').MongoNetworkError,
- MongoParseError: require('./lib/error').MongoParseError,
- MongoTimeoutError: require('./lib/error').MongoTimeoutError,
- MongoWriteConcernError: require('./lib/error').MongoWriteConcernError,
- mongoErrorContextSymbol: require('./lib/error').mongoErrorContextSymbol,
- // Core
- Connection: require('./lib/connection/connection'),
- Server: require('./lib/topologies/server'),
- ReplSet: require('./lib/topologies/replset'),
- Mongos: require('./lib/topologies/mongos'),
- Logger: require('./lib/connection/logger'),
- Cursor: require('./lib/cursor'),
- ReadPreference: require('./lib/topologies/read_preference'),
- Sessions: require('./lib/sessions'),
- BSON: BSON,
- EJSON: EJSON,
- Topology: require('./lib/sdam/topology'),
- // Raw operations
- Query: require('./lib/connection/commands').Query,
- // Auth mechanisms
- MongoCredentials: require('./lib/auth/mongo_credentials').MongoCredentials,
- defaultAuthProviders: require('./lib/auth/defaultAuthProviders').defaultAuthProviders,
- MongoCR: require('./lib/auth/mongocr'),
- X509: require('./lib/auth/x509'),
- Plain: require('./lib/auth/plain'),
- GSSAPI: require('./lib/auth/gssapi'),
- ScramSHA1: require('./lib/auth/scram').ScramSHA1,
- ScramSHA256: require('./lib/auth/scram').ScramSHA256,
- // Utilities
- parseConnectionString: require('./lib/uri_parser')
- };
|