azurite
Version:
An open source Azure Storage API compatible server
32 lines • 971 B
JavaScript
Object.defineProperty(exports, "__esModule", { value: true });
/**
* An async iterator which enumerates all extents being used.
*
* @export
* @class ReferredExtentsAsyncIterator
* @implements {AsyncIterator<string[]>}
*/
class QueueReferredExtentsAsyncIterator {
constructor(queueMetadata) {
this.queueMetadata = queueMetadata;
this.unit = 1000;
this.done = false;
}
async next() {
if (this.done) {
return { done: true, value: [] };
}
const [messages, nextMarker] = await this.queueMetadata.listMessages(this.unit, this.marker);
this.marker = nextMarker;
if (nextMarker === undefined) {
this.done = true;
}
return {
done: false,
value: messages.map((val) => val.persistency.id)
};
}
}
exports.default = QueueReferredExtentsAsyncIterator;
//# sourceMappingURL=QueueReferredExtentsAsyncIterator.js.map
;