3 var ReadPreference = require('../topologies/read_preference'),
4 MongoError = require('../error');
6 var getReadPreference = function(cmd, options) {
7 // Default to command version of the readPreference
8 var readPreference = cmd.readPreference || new ReadPreference('primary');
9 // If we have an option readPreference override the command one
10 if(options.readPreference) {
11 readPreference = options.readPreference;
14 if(typeof readPreference == 'string') {
15 readPreference = new ReadPreference(readPreference);
18 if(!(readPreference instanceof ReadPreference)) {
19 throw new MongoError('readPreference must be a ReadPreference instance');
22 return readPreference;
26 getReadPreference: getReadPreference