UNPKG

ravendb

Version:
67 lines 2.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ModifyDatabaseTopologyOperation = void 0; const index_js_1 = require("../../Exceptions/index.js"); const RavenCommand_js_1 = require("../../Http/RavenCommand.js"); const RaftIdGenerator_js_1 = require("../../Utility/RaftIdGenerator.js"); const TypeUtil_js_1 = require("../../Utility/TypeUtil.js"); const ClientShardHelper_js_1 = require("../../Utility/ClientShardHelper.js"); class ModifyDatabaseTopologyOperation { _databaseName; _databaseTopology; constructor(databaseName, databaseTopologyOrShardNumber, databaseTopology) { if (TypeUtil_js_1.TypeUtil.isNullOrUndefined(databaseTopologyOrShardNumber)) { (0, index_js_1.throwError)("InvalidArgumentException", "DatabaseTopology cannot be null"); } if (TypeUtil_js_1.TypeUtil.isNumber(databaseTopologyOrShardNumber)) { this._databaseTopology = databaseTopology; this._databaseName = ClientShardHelper_js_1.ClientShardHelper.toShardName(databaseName, databaseTopologyOrShardNumber); } else { this._databaseName = databaseName; this._databaseTopology = databaseTopology; } } get resultType() { return "CommandResult"; } getCommand(conventions) { return new ModifyDatabaseTopologyCommand(this._databaseName, this._databaseTopology); } } exports.ModifyDatabaseTopologyOperation = ModifyDatabaseTopologyOperation; class ModifyDatabaseTopologyCommand extends RavenCommand_js_1.RavenCommand { _databaseName; _databaseTopology; constructor(databaseName, databaseTopology) { super(); if (!databaseTopology) { (0, index_js_1.throwError)("InvalidArgumentException", "DatabaseTopology cannot be null"); } this._databaseTopology = databaseTopology; this._databaseName = databaseName; } createRequest(node) { const uri = node.url + "/admin/databases/topology/modify?name=" + this._databaseName; const body = this._serializer.serialize(this._databaseTopology); return { uri, method: "POST", body, headers: this._headers().typeAppJson().build(), }; } get isReadRequest() { return false; } getRaftUniqueRequestId() { return RaftIdGenerator_js_1.RaftIdGenerator.newId(); } async setResponseAsync(bodyStream, fromCache) { let body = null; this.result = await this._defaultPipeline(_ => body = _) .process(bodyStream); return body; } } //# sourceMappingURL=ModifyDatabaseTopologyOperation.js.map