123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- 'use strict';
- const Aspect = require('./operation').Aspect;
- const CommandOperation = require('./command');
- const defineAspects = require('./operation').defineAspects;
- /**
- * Get all the collection statistics.
- *
- * @class
- * @property {Collection} a Collection instance.
- * @property {object} [options] Optional settings. See Collection.prototype.stats for a list of options.
- */
- class StatsOperation extends CommandOperation {
- /**
- * Construct a Stats operation.
- *
- * @param {Collection} a Collection instance.
- * @param {object} [options] Optional settings. See Collection.prototype.stats for a list of options.
- */
- constructor(collection, options) {
- super(collection.s.db, options, collection);
- }
- _buildCommand() {
- const collection = this.collection;
- const options = this.options;
- // Build command object
- const command = {
- collStats: collection.collectionName
- };
- // Check if we have the scale value
- if (options['scale'] != null) {
- command['scale'] = options['scale'];
- }
- return command;
- }
- }
- defineAspects(StatsOperation, Aspect.READ_OPERATION);
- module.exports = StatsOperation;
|