@@ -26,8 +26,81 @@ const OVERRIDES = {
26
26
REPLSETSERVERS : 'replSetServers' ,
27
27
REPLICANAME : 'replicaName' ,
28
28
MAX_POOL_SIZE : 'max_pool_size' ,
29
- DBOPTIONS : 'dbOptions' ,
30
- SERVEROPTIONS : 'serverOptions'
29
+ DBOPTIONS : {
30
+ __name : "dbOptions" ,
31
+ AUTHMECHANISM : 'authMechanism' ,
32
+ AUTHMECHANISMPROPERTIES : 'authMechanismProperties' ,
33
+ AUTHSOURCE : 'authSource' ,
34
+ AUTOENCRYPTION : 'autoEncryption' ,
35
+ BSONREGEXP : 'bsonRegExp' ,
36
+ CHECKKEYS : 'checkKeys' ,
37
+ CHECKSERVERIDENTITY : 'checkServerIdentity' ,
38
+ CONNECTTIMEOUTMS : 'connectTimeoutMS' ,
39
+ DIRECTCONNECTION : 'directConnection' ,
40
+ DRIVERINFO : 'driverInfo' ,
41
+ ECDHCURVE : 'ecdhCurve' ,
42
+ ENABLEUTF8VALIDATION : 'enableUtf8Validation' ,
43
+ FIELDSASRAW : 'fieldsAsRaw' ,
44
+ FORCESERVEROBJECTID : 'forceServerObjectId' ,
45
+ HEARTBEATFREQUENCYMS : 'heartbeatFrequencyMS' ,
46
+ IGNOREUNDEFINED : 'ignoreUndefined' ,
47
+ KEEPALIVE : 'keepAlive' ,
48
+ KEEPALIVEINITIALDELAY : 'keepAliveInitialDelay' ,
49
+ LOADBALANCED : 'loadBalanced' ,
50
+ LOCALADDRESS : 'localAddress' ,
51
+ LOCALPORT : 'localPort' ,
52
+ LOCALTHRESHOLDMS : 'localThresholdMS' ,
53
+ LOGGERLEVEL : 'loggerLevel' ,
54
+ MAXIDLETIMEMS : 'maxIdleTimeMS' ,
55
+ MAXPOOLSIZE : 'maxPoolSize' ,
56
+ MAXSTALENESSSECONDS : 'maxStalenessSeconds' ,
57
+ MINDHSIZE : 'minDHSize' ,
58
+ MINHEARTBEATFREQUENCYMS : 'minHeartbeatFrequencyMS' ,
59
+ MINPOOLSIZE : 'minPoolSize' ,
60
+ MONITORCOMMANDS : 'monitorCommands' ,
61
+ NODELAY : 'noDelay' ,
62
+ PKFACTORY : 'pkFactory' ,
63
+ PROMISELIBRARY : 'promiseLibrary' ,
64
+ PROMOTEBUFFERS : 'promoteBuffers' ,
65
+ PROMOTELONGS : 'promoteLongs' ,
66
+ PROMOTEVALUES : 'promoteValues' ,
67
+ PROXYHOST : 'proxyHost' ,
68
+ PROXYPASSWORD : 'proxyPassword' ,
69
+ PROXYPORT : 'proxyPort' ,
70
+ PROXYUSERNAME : 'proxyUsername' ,
71
+ READCONCERN : 'readConcern' ,
72
+ READCONCERNLEVEL : 'readConcernLevel' ,
73
+ READPREFERENCE : 'readPreference' ,
74
+ READPREFERENCETAGS : 'readPreferenceTags' ,
75
+ REJECTUNAUTHORIZED : 'rejectUnauthorized' ,
76
+ REPLICASET : 'replicaSet' ,
77
+ RETRYREADS : 'retryReads' ,
78
+ RETRYWRITES : 'retryWrites' ,
79
+ SECURECONTEXT : 'secureContext' ,
80
+ SECUREPROTOCOL : 'secureProtocol' ,
81
+ SERIALIZEFUNCTIONS : 'serializeFunctions' ,
82
+ SERVERAPI : 'serverApi' ,
83
+ SERVERSELECTIONTIMEOUTMS : 'serverSelectionTimeoutMS' ,
84
+ SOCKETTIMEOUTMS : 'socketTimeoutMS' ,
85
+ SRVMAXHOSTS : 'srvMaxHosts' ,
86
+ SRVSERVICENAME : 'srvServiceName' ,
87
+ SSLCA : 'sslCA' ,
88
+ SSLCRL : 'sslCRL' ,
89
+ SSLCERT : 'sslCert' ,
90
+ SSLKEY : 'sslKey' ,
91
+ SSLPASS : 'sslPass' ,
92
+ SSLVALIDATE : 'sslValidate' ,
93
+ TLSALLOWINVALIDCERTIFICATES : 'tlsAllowInvalidCertificates' ,
94
+ TLSALLOWINVALIDHOSTNAMES : 'tlsAllowInvalidHostnames' ,
95
+ TLSCAFILE : 'tlsCAFile' ,
96
+ TLSCERTIFICATEFILE : 'tlsCertificateFile' ,
97
+ TLSCERTIFICATEKEYFILE : 'tlsCertificateKeyFile' ,
98
+ TLSCERTIFICATEKEYFILEPASSWORD : 'tlsCertificateKeyFilePassword' ,
99
+ TLSINSECURE : 'tlsInsecure' ,
100
+ WAITQUEUETIMEOUTMS : 'waitQueueTimeoutMS' ,
101
+ WTIMEOUTMS : 'wtimeoutMS' ,
102
+ ZLIBCOMPRESSIONLEVEL : 'zlibCompressionLevel' ,
103
+ } ,
31
104
} ,
32
105
33
106
API : {
@@ -66,6 +139,9 @@ function dig(config, over, name, value) {
66
139
sub = over [ n ] ;
67
140
over [ n ] = { } ;
68
141
}
142
+ else if ( over [ n ] && over [ n ] . __name ) {
143
+ sub = over [ n ] . __name ;
144
+ }
69
145
else {
70
146
sub = Object . keys ( config ) . filter ( k => k . toUpperCase ( ) === n ) [ 0 ] ;
71
147
}
0 commit comments