UNPKG

ravendb

Version:
69 lines 2.53 kB
import { RavenCommand } from "../../Http/RavenCommand.js"; import { TypeUtil } from "../../Utility/TypeUtil.js"; import { RaftIdGenerator } from "../../Utility/RaftIdGenerator.js"; export class AddDatabaseShardOperation { _databaseName; _shardNumber; _nodes; _replicationFactor; _dynamicNodeDistribution; constructor(parameters) { this._databaseName = parameters.databaseName; this._shardNumber = parameters.shardNumber; this._nodes = parameters.nodes; this._replicationFactor = parameters.replicationFactor; this._dynamicNodeDistribution = parameters.dynamicNodeDistribution; } get resultType() { return "CommandResult"; } getCommand(conventions) { return new AddDatabaseShardCommand(this._databaseName, this._shardNumber, this._nodes, this._replicationFactor, this._dynamicNodeDistribution); } } class AddDatabaseShardCommand extends RavenCommand { _databaseName; _shardNumber; _nodes; _replicationFactor; _dynamicNodeDistribution; constructor(databaseName, shardNumber, nodes, replicationFactor, dynamicNodeDistribution) { super(); this._databaseName = databaseName; this._shardNumber = shardNumber; this._nodes = nodes; this._replicationFactor = replicationFactor; this._dynamicNodeDistribution = dynamicNodeDistribution; } get isReadRequest() { return false; } createRequest(node) { let uri = node.url + "/admin/databases/shard?name=" + this._urlEncode(this._databaseName); if (!TypeUtil.isNullOrUndefined(this._shardNumber)) { uri += "&shardNumber=" + this._shardNumber; } if (!TypeUtil.isNullOrUndefined(this._replicationFactor)) { uri += "&replicationFactor=" + this._replicationFactor; } if (!TypeUtil.isNullOrUndefined(this._dynamicNodeDistribution)) { uri += "&dynamicNodeDistribution=" + this._dynamicNodeDistribution; } if (this._nodes && this._nodes.length > 0) { for (const nodeStr of this._nodes) { uri += "&node=" + this._urlEncode(nodeStr); } } return { uri, method: "PUT" }; } async setResponseAsync(bodyStream, fromCache) { return this._parseResponseDefaultAsync(bodyStream); } getRaftUniqueRequestId() { return RaftIdGenerator.newId(); } } //# sourceMappingURL=AddDatabaseShardOperation.js.map