UNPKG

@configurator/ravendb

Version:
57 lines 2.1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.GetRevisionsOperation = void 0; const RevisionsResult_1 = require("./RevisionsResult"); const RavenCommand_1 = require("../../../Http/RavenCommand"); const GetRevisionsCommand_1 = require("../../Commands/GetRevisionsCommand"); class GetRevisionsOperation { constructor(id, parameters = {}) { this._id = id; this._parameters = parameters; } get resultType() { return "CommandResult"; } getCommand(store, conventions, httpCache) { return new GetRevisionsResultCommand(this._id, this._parameters, conventions); } } exports.GetRevisionsOperation = GetRevisionsOperation; class GetRevisionsResultCommand extends RavenCommand_1.RavenCommand { constructor(id, parameters, conventions) { super(); this.conventions = conventions; this._id = id; this._parameters = parameters; this._cmd = new GetRevisionsCommand_1.GetRevisionsCommand(conventions, id, parameters.start || 0, parameters.pageSize); } get isReadRequest() { return true; } createRequest(node) { return this._cmd.createRequest(node); } async setResponseAsync(bodyStream, fromCache) { if (!bodyStream) { return; } let body; const responseNode = await this._pipeline() .parseJsonSync() .collectBody(b => body = b) .process(bodyStream); if (!responseNode.Results) { return body; } const revisions = responseNode.Results; const total = responseNode.TotalResults; const result = new RevisionsResult_1.RevisionsResult(); result.totalResults = total; result.results = revisions.filter(x => x).map(x => { const entityType = this.conventions.getJsTypeByDocumentType(this._parameters.documentType); return this.conventions.deserializeEntityFromJson(entityType, x); }); this.result = result; } } //# sourceMappingURL=GetRevisionsOperation.js.map