in packages/azure-kusto-ingest/src/statusQ.ts [69:92]
async _peek(qs: QueueDetails[], n: number, options: PeekParams | null): Promise<{ result: Message[]; nonEmptyQs: QueueDetails[]; done: boolean }> {
const result: Message[] = [];
const nonEmptyQs: QueueDetails[] = [];
for (const q of qs) {
const response = await q.service.peekMessages();
const messages = response.peekedMessageItems;
if (messages && messages.length > 0) {
nonEmptyQs.push(q);
}
for (const m of messages) {
if (m && Object.keys(m).length > 0) {
result.push(options && options.raw ? m : this.deserializeMessage(m));
if (result.length === n) {
return { done: true, nonEmptyQs, result };
}
}
}
}
return { done: nonEmptyQs.length === 0, nonEmptyQs, result };
}