diff --git a/libs/event-emitter/src/events/redmine-events.gateway.ts b/libs/event-emitter/src/events/redmine-events.gateway.ts index 778a345..f4d6882 100644 --- a/libs/event-emitter/src/events/redmine-events.gateway.ts +++ b/libs/event-emitter/src/events/redmine-events.gateway.ts @@ -87,6 +87,10 @@ export class RedmineEventsGateway { return this.issuesChangesQueue.getQueueSize(); } + getQueueIssues(): number[] { + return this.issuesChangesQueue.getItems(); + } + private sendWebHookFullDataEvents(data: RedmineIssueData[]): void { const webhooks = this.config.get('webhooks'); webhooks.forEach((webhook) => { diff --git a/libs/event-emitter/src/main/main.controller.ts b/libs/event-emitter/src/main/main.controller.ts index c3227cd..525d1bc 100644 --- a/libs/event-emitter/src/main/main.controller.ts +++ b/libs/event-emitter/src/main/main.controller.ts @@ -21,4 +21,9 @@ export class MainController { getIssuesQueueSize(): number { return this.redmineEventsGateway.getQueueSize(); } + + @Get('get-issues-queue') + getIssuesQueue(): number[] { + return this.redmineEventsGateway.getQueueIssues(); + } } diff --git a/libs/event-emitter/src/queue/queue.ts b/libs/event-emitter/src/queue/queue.ts index 4adc608..c217e80 100644 --- a/libs/event-emitter/src/queue/queue.ts +++ b/libs/event-emitter/src/queue/queue.ts @@ -32,6 +32,10 @@ export class Queue { return this.items.length; } + getItems(): T[] { + return this.items; + } + private updateTimeout; private async update(): Promise {