"use strict"; var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; var __metadata = (this && this.__metadata) || function (k, v) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); }; var AuditEventHandler_1; Object.defineProperty(exports, "__esModule", { value: true }); exports.AuditEventHandler = void 0; const common_1 = require("@nestjs/common"); const event_bus_service_1 = require("../../core/event-bus/event-bus.service"); const audit_service_1 = require("./audit.service"); let AuditEventHandler = AuditEventHandler_1 = class AuditEventHandler { events; auditService; logger = new common_1.Logger(AuditEventHandler_1.name); constructor(events, auditService) { this.events = events; this.auditService = auditService; this.events.subscribe('RolesSynchronized', (e) => this.handleRolesSynchronized(e)); this.events.subscribe('UserAuthenticated', (e) => this.handleUserAuthenticated(e)); this.events.subscribe('RoleCreated', (e) => this.handleGeneric(e)); this.events.subscribe('RoleUpdated', (e) => this.handleGeneric(e)); this.events.subscribe('RoleDeleted', (e) => this.handleGeneric(e)); this.events.subscribe('PermissionCreated', (e) => this.handleGeneric(e)); this.events.subscribe('PermissionUpdated', (e) => this.handleGeneric(e)); this.events.subscribe('PermissionDeleted', (e) => this.handleGeneric(e)); this.events.subscribe('UserActivated', (e) => this.handleGeneric(e)); this.events.subscribe('UserDeactivated', (e) => this.handleGeneric(e)); } async handleRolesSynchronized(event) { try { await this.auditService.createFromEvent(event); } catch (e) { this.logger.error('Audit handler failed', e); } } async handleUserAuthenticated(event) { try { await this.auditService.createFromEvent(event); } catch (e) { this.logger.error('Audit handler failed', e); } } async handleGeneric(event) { try { await this.auditService.createFromEvent(event); } catch (e) { this.logger.error('Audit handler failed', e); } } }; exports.AuditEventHandler = AuditEventHandler; exports.AuditEventHandler = AuditEventHandler = AuditEventHandler_1 = __decorate([ (0, common_1.Injectable)(), __metadata("design:paramtypes", [event_bus_service_1.EventBus, audit_service_1.AuditService]) ], AuditEventHandler); //# sourceMappingURL=audit.event-handler.js.map