HTMLify
execute_db_admin_command.js
Views: 6 | Author: cody
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | 'use strict'; const OperationBase = require('./operation').OperationBase; const handleCallback = require('../utils').handleCallback; const MongoError = require('../core').MongoError; const MongoDBNamespace = require('../utils').MongoDBNamespace; class ExecuteDbAdminCommandOperation extends OperationBase { constructor(db, selector, options) { super(options); this.db = db; this.selector = selector; } execute(callback) { const db = this.db; const selector = this.selector; const options = this.options; const namespace = new MongoDBNamespace('admin', '$cmd'); db.s.topology.command(namespace, selector, options, (err, result) => { // Did the user destroy the topology if (db.serverConfig && db.serverConfig.isDestroyed()) { return callback(new MongoError('topology was destroyed')); } if (err) return handleCallback(callback, err); handleCallback(callback, null, result.result); }); } } module.exports = ExecuteDbAdminCommandOperation; |