Skip to content

Commit 050267d

Browse files
kvwalkermbroadst
authored andcommitted
fix(*): restore ability to webpack by removing makeLazyLoader
* fix(lib): remove makeLazyLoader * memoize lazy loading function
1 parent 6e896f4 commit 050267d

File tree

5 files changed

+43
-22
lines changed

5 files changed

+43
-22
lines changed

lib/operations/collection_ops.js

+14-3
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,24 @@ const handleCallback = require('../utils').handleCallback;
1818
const indexInformationDb = require('./db_ops').indexInformation;
1919
const isObject = require('../utils').isObject;
2020
const Long = require('mongodb-core').BSON.Long;
21-
const makeLazyLoader = require('../utils').makeLazyLoader;
2221
const MongoError = require('mongodb-core').MongoError;
2322
const ReadPreference = require('mongodb-core').ReadPreference;
2423
const toError = require('../utils').toError;
2524

26-
const loadCollection = makeLazyLoader(`${__dirname}/../collection`);
27-
const loadDb = makeLazyLoader(`${__dirname}/../db`);
25+
let collection;
26+
function loadCollection() {
27+
if (!collection) {
28+
collection = require('../collection');
29+
}
30+
return collection;
31+
}
32+
let db;
33+
function loadDb() {
34+
if (!db) {
35+
db = require('../db');
36+
}
37+
return db;
38+
}
2839

2940
/**
3041
* Group function helper

lib/operations/cursor_ops.js

+7-2
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,16 @@
33
const buildCountCommand = require('./collection_ops').buildCountCommand;
44
const formattedOrderClause = require('../utils').formattedOrderClause;
55
const handleCallback = require('../utils').handleCallback;
6-
const makeLazyLoader = require('../utils').makeLazyLoader;
76
const MongoError = require('mongodb-core').MongoError;
87
const push = Array.prototype.push;
98

10-
const loadCursor = makeLazyLoader(`${__dirname}/../cursor`);
9+
let cursor;
10+
function loadCursor() {
11+
if (!cursor) {
12+
cursor = require('../cursor');
13+
}
14+
return cursor;
15+
}
1116

1217
/**
1318
* Get the count of documents for this cursor.

lib/operations/db_ops.js

+14-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ const resolveReadPreference = require('../utils').resolveReadPreference;
66
const crypto = require('crypto');
77
const debugOptions = require('../utils').debugOptions;
88
const handleCallback = require('../utils').handleCallback;
9-
const makeLazyLoader = require('../utils').makeLazyLoader;
109
const MongoError = require('mongodb-core').MongoError;
1110
const parseIndexOptions = require('../utils').parseIndexOptions;
1211
const ReadPreference = require('mongodb-core').ReadPreference;
@@ -18,8 +17,20 @@ const findOne = require('./collection_ops').findOne;
1817
const remove = require('./collection_ops').remove;
1918
const updateOne = require('./collection_ops').updateOne;
2019

21-
const loadCollection = makeLazyLoader(`${__dirname}/../collection`);
22-
const loadDb = makeLazyLoader(`${__dirname}/../db`);
20+
let collection;
21+
function loadCollection() {
22+
if (!collection) {
23+
collection = require('../collection');
24+
}
25+
return collection;
26+
}
27+
let db;
28+
function loadDb() {
29+
if (!db) {
30+
db = require('../db');
31+
}
32+
return db;
33+
}
2334

2435
const debugFields = [
2536
'authSource',

lib/operations/mongo_client_ops.js

+7-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
const authenticate = require('../authenticate');
44
const deprecate = require('util').deprecate;
55
const Logger = require('mongodb-core').Logger;
6-
const makeLazyLoader = require('../utils').makeLazyLoader;
76
const MongoError = require('mongodb-core').MongoError;
87
const Mongos = require('../topologies/mongos');
98
const parse = require('mongodb-core').parseConnectionString;
@@ -12,7 +11,13 @@ const ReplSet = require('../topologies/replset');
1211
const Server = require('../topologies/server');
1312
const ServerSessionPool = require('mongodb-core').Sessions.ServerSessionPool;
1413

15-
const loadClient = makeLazyLoader(`${__dirname}/../mongo_client`);
14+
let client;
15+
function loadClient() {
16+
if (!client) {
17+
client = require('../mongo_client');
18+
}
19+
return client;
20+
}
1621

1722
const monitoringEvents = [
1823
'timeout',

lib/utils.js

+1-12
Original file line numberDiff line numberDiff line change
@@ -694,16 +694,6 @@ function deprecateOptions(config, fn) {
694694
return deprecated;
695695
}
696696

697-
function makeLazyLoader(modulePath) {
698-
let mod;
699-
return function lazyLoad() {
700-
if (!mod) {
701-
mod = require(modulePath);
702-
}
703-
return mod;
704-
};
705-
}
706-
707697
module.exports = {
708698
filterOptions,
709699
mergeOptions,
@@ -729,6 +719,5 @@ module.exports = {
729719
isPromiseLike,
730720
decorateWithCollation,
731721
decorateWithReadConcern,
732-
deprecateOptions,
733-
makeLazyLoader
722+
deprecateOptions
734723
};

0 commit comments

Comments
 (0)