<?php
namespace MedBrief\MSR\EventSubscriber;
use Doctrine\ORM\EntityManagerInterface;
use MedBrief\MSR\Event\AuditRecordEvent;
use Override;
use Symfony\Component\EventDispatcher\EventSubscriberInterface;
class AuditRecordSubscriber implements EventSubscriberInterface
{
public function __construct(protected EntityManagerInterface $entityManager)
{
}
/**
* @inheritDoc
*/
#[Override]
public static function getSubscribedEvents()
{
return [
AuditRecordEvent::AUDIT => 'logAuditActivity',
];
}
public function logAuditActivity(AuditRecordEvent $event): void
{
$auditRecord = $event->getAuditRecord();
$this->entityManager->persist($auditRecord);
$this->entityManager->flush();
}
}