Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | import { Logger } from '@nestjs/common';
import { EventsHandler, type IEventHandler } from '@nestjs/cqrs';
import { type StatementDatasetCacheBurstEvent } from '@amalia/core/types';
import { MessageTasks, MessageType, QueueService } from '@amalia/kernel/queue/core';
import {
UserDeactivatedEvent,
UserInvitedEvent,
UserReactivatedEvent,
UserUpdatedEvent,
} from '@amalia/tenants/users/profile/events';
import { UsersCreatedEvent } from './UsersCreatedEvent';
export type UserEvent =
| UserDeactivatedEvent
| UserInvitedEvent
| UserReactivatedEvent
| UsersCreatedEvent
| UserUpdatedEvent;
@EventsHandler(UserUpdatedEvent, UsersCreatedEvent, UserInvitedEvent, UserDeactivatedEvent, UserReactivatedEvent)
export class UserEventsHandler implements IEventHandler<UserEvent> {
private readonly logger = new Logger(UserEventsHandler.name);
public constructor(private readonly queueService: QueueService) {}
public async handle(event: UserEvent): Promise<void> {
const { company } = event;
const task = {
type: MessageType.TASK,
taskIdentifier: MessageTasks.BURST_STATEMENT_DATASET_CACHE,
};
const payload: StatementDatasetCacheBurstEvent = {
companyId: company.id,
};
this.logger.log({
message: 'Sent BURST_STATEMENT_DATASET_CACHE to queue',
event: event.constructor.name,
task,
payload,
});
await this.queueService.sendToQueue(task, payload);
}
}
|