UNPKG

ravendb

Version:
66 lines 2.48 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SetDatabasesLockOperation = 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"); class SetDatabasesLockOperation { _parameters; constructor(databaseNameOrParameters, mode) { if (!databaseNameOrParameters) { (0, index_js_1.throwError)("InvalidArgumentException", "Database or Parameters cannot be null"); } if (TypeUtil_js_1.TypeUtil.isString(databaseNameOrParameters)) { this._parameters = { databaseNames: [databaseNameOrParameters], mode }; } else { if (!databaseNameOrParameters.databaseNames || databaseNameOrParameters.databaseNames.length === 0) { (0, index_js_1.throwError)("InvalidArgumentException", "DatabaseNames cannot be null or empty"); } this._parameters = databaseNameOrParameters; } } get resultType() { return "CommandResult"; } getCommand(conventions) { return new SetDatabasesLockCommand(conventions, this._parameters); } } exports.SetDatabasesLockOperation = SetDatabasesLockOperation; class SetDatabasesLockCommand extends RavenCommand_js_1.RavenCommand { _parameters; constructor(conventions, parameters) { super(); if (!conventions) { (0, index_js_1.throwError)("InvalidArgumentException", "Conventions cannot be null"); } if (!parameters) { (0, index_js_1.throwError)("InvalidArgumentException", "Parameters cannot be null"); } this._parameters = conventions.objectMapper.toObjectLiteral(parameters); } createRequest(node) { const uri = node.url + "/admin/databases/set-lock"; const body = this._serializer.serialize(this._parameters); const headers = this._headers() .typeAppJson().build(); return { uri, method: "POST", body, headers }; } get isReadRequest() { return false; } getRaftUniqueRequestId() { return RaftIdGenerator_js_1.RaftIdGenerator.newId(); } } //# sourceMappingURL=SetDatabasesLockOperation.js.map