diff options
Diffstat (limited to 'node_modules/mongodb-core/lib/wireprotocol/shared.js')
| -rw-r--r-- | node_modules/mongodb-core/lib/wireprotocol/shared.js | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/node_modules/mongodb-core/lib/wireprotocol/shared.js b/node_modules/mongodb-core/lib/wireprotocol/shared.js new file mode 100644 index 0000000..3a20f51 --- /dev/null +++ b/node_modules/mongodb-core/lib/wireprotocol/shared.js @@ -0,0 +1,26 @@ +"use strict" + +var ReadPreference = require('../topologies/read_preference'); + +var getReadPreference = function(cmd, options) { + // Default to command version of the readPreference + var readPreference = cmd.readPreference || new ReadPreference('primary'); + // If we have an option readPreference override the command one + if(options.readPreference) { + readPreference = options.readPreference; + } + + if(typeof readPreference == 'string') { + readPreference = new ReadPreference(readPreference); + } + + if(!(readPreference instanceof ReadPreference)) { + throw new MongoError('readPreference must be a ReadPreference instance'); + } + + return readPreference; +} + +module.exports = { + getReadPreference: getReadPreference +} |
