HTMLify
options_operation.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 | 'use strict'; const OperationBase = require('./operation').OperationBase; const handleCallback = require('../utils').handleCallback; const MongoError = require('../core').MongoError; class OptionsOperation extends OperationBase { constructor(collection, options) { super(options); this.collection = collection; } execute(callback) { const coll = this.collection; const opts = this.options; coll.s.db.listCollections({ name: coll.collectionName }, opts).toArray((err, collections) => { if (err) return handleCallback(callback, err); if (collections.length === 0) { return handleCallback( callback, MongoError.create({ message: `collection ${coll.namespace} not found`, driver: true }) ); } handleCallback(callback, err, collections[0].options || null); }); } } module.exports = OptionsOperation; |