UNPKG

couchbase-index-manager

Version:
51 lines 2.31 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.CreateIndexMutation = void 0; const tslib_1 = require("tslib"); const chalk_1 = tslib_1.__importDefault(require("chalk")); const index_mutation_1 = require("./index-mutation"); /** * Represents an index mutation which is creating a new index */ class CreateIndexMutation extends index_mutation_1.IndexMutation { constructor(definition, name, withClause) { super(definition, name); this.withClause = withClause || {}; } print(logger) { var _a; logger.info(chalk_1.default.greenBright(`Create: ${this.displayName}`)); if (this.definition.is_primary) { logger.info(chalk_1.default.greenBright(` Keys: PRIMARY`)); } else { logger.info(chalk_1.default.greenBright(` Keys: ${this.definition.index_key.join(', ')}`)); } if (this.definition.condition) { logger.info(chalk_1.default.greenBright(` Cond: ${this.definition.condition}`)); } if (this.definition.partition) { logger.info(chalk_1.default.greenBright(` Part: ${this.definition.getPartitionString()}`)); if (this.definition.partition.num_partition) { logger.info(chalk_1.default.greenBright(`# Part: ${this.definition.partition.num_partition}`)); } } if (((_a = this.definition.num_replica) !== null && _a !== void 0 ? _a : 0) > 0 && !this.definition.manual_replica) { logger.info(chalk_1.default.greenBright(` Repl: ${this.definition.num_replica}`)); } if (this.withClause.nodes) { logger.info(chalk_1.default.greenBright(` Nodes: ${this.withClause.nodes.join()}`)); } if (this.withClause.retain_deleted_xattr) { logger.info(chalk_1.default.greenBright(' XATTR: true')); } } async execute(indexManager, logger) { logger.info(chalk_1.default.greenBright(`Creating ${this.displayName}...`)); const statement = this.definition.getCreateStatement(indexManager.bucketName, this.name, this.withClause); await indexManager.createIndex(statement); } } exports.CreateIndexMutation = CreateIndexMutation; //# sourceMappingURL=create-index-mutation.js.map