UNPKG

ravendb

Version:
74 lines 2.88 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.DeleteDatabaseCommand = exports.DeleteDatabasesOperation = void 0; const index_js_1 = require("../../Exceptions/index.js"); const RavenCommand_js_1 = require("../../Http/RavenCommand.js"); const HttpUtil_js_1 = require("../../Utility/HttpUtil.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 DeleteDatabasesOperation { get resultType() { return "CommandResult"; } _parameters; constructor(parameters) { if (!parameters) { (0, index_js_1.throwError)("InvalidArgumentException", "Parameters must be provided."); } if (!parameters.databaseNames || !parameters.databaseNames.length) { (0, index_js_1.throwError)("InvalidArgumentException", "Database names must be provided."); } this._parameters = parameters; if (!TypeUtil_js_1.TypeUtil.isNullOrUndefined(parameters.shardNumber)) { this._parameters = { ...parameters, databaseNames: parameters.databaseNames.map(x => ClientShardHelper_js_1.ClientShardHelper.toShardName(x, parameters.shardNumber)) }; } } getCommand(conventions) { return new DeleteDatabaseCommand(conventions, this._parameters); } } exports.DeleteDatabasesOperation = DeleteDatabasesOperation; class DeleteDatabaseCommand 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 = this._serializer.serialize(parameters); } createRequest(node) { const uri = node.url + "/admin/databases"; return { uri, method: "DELETE", headers: HttpUtil_js_1.HeadersBuilder.create() .typeAppJson() .build(), body: this._parameters, }; } async setResponseAsync(bodyStream, fromCache) { if (!bodyStream) { this._throwInvalidResponse(); } let body = null; this.result = await this._defaultPipeline(x => body = x).process(bodyStream); return body; } get isReadRequest() { return false; } getRaftUniqueRequestId() { return RaftIdGenerator_js_1.RaftIdGenerator.newId(); } } exports.DeleteDatabaseCommand = DeleteDatabaseCommand; //# sourceMappingURL=DeleteDatabasesOperation.js.map