@azure/cosmos
Version:
Microsoft Azure Cosmos DB Service Node.js SDK for NOSQL API
64 lines (63 loc) • 2.65 kB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var LegacyFetchImplementation_exports = {};
__export(LegacyFetchImplementation_exports, {
LegacyFetchImplementation: () => LegacyFetchImplementation
});
module.exports = __toCommonJS(LegacyFetchImplementation_exports);
var import_headerUtils = require("./headerUtils.js");
class LegacyFetchImplementation {
constructor(endpoint, pageSize) {
this.endpoint = endpoint;
this.pageSize = pageSize;
}
async fetchMore(diagnosticNode, fetchBuffer) {
const fetchMoreRespHeaders = (0, import_headerUtils.getInitialHeader)();
try {
while (fetchBuffer.length < this.pageSize && this.endpoint.hasMoreResults()) {
const response = await this.endpoint.fetchMore(diagnosticNode);
(0, import_headerUtils.mergeHeaders)(fetchMoreRespHeaders, response.headers);
if (!response || !response.result || !response.result.buffer || response.result.buffer.length === 0) {
if (fetchBuffer.length > 0) {
const copiedFetchBuffer = [...fetchBuffer];
fetchBuffer.length = 0;
return { result: copiedFetchBuffer, headers: fetchMoreRespHeaders };
} else {
return { result: void 0, headers: fetchMoreRespHeaders };
}
}
fetchBuffer.push(...response.result.buffer);
}
if (fetchBuffer.length > 0) {
const temp = fetchBuffer.slice(0, this.pageSize);
fetchBuffer.splice(0, this.pageSize);
return { result: temp, headers: fetchMoreRespHeaders };
} else {
return { result: void 0, headers: fetchMoreRespHeaders };
}
} catch (err) {
(0, import_headerUtils.mergeHeaders)(fetchMoreRespHeaders, err.headers);
err.headers = fetchMoreRespHeaders;
throw err;
}
}
}
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
LegacyFetchImplementation
});