From 1809e5a64e4ec62887116f4bc6a56f3750800274 Mon Sep 17 00:00:00 2001 From: brabli <67018167+brabli@users.noreply.github.com> Date: Thu, 7 May 2026 16:42:06 +0100 Subject: [PATCH] Update subscriber to a listener as that's technically what it is --- ...eSubscriber.php => SearchableListener.php} | 29 ++++++++++--------- 1 file changed, 15 insertions(+), 14 deletions(-) rename src/EventSubscriber/{SearchableSubscriber.php => SearchableListener.php} (78%) diff --git a/src/EventSubscriber/SearchableSubscriber.php b/src/EventSubscriber/SearchableListener.php similarity index 78% rename from src/EventSubscriber/SearchableSubscriber.php rename to src/EventSubscriber/SearchableListener.php index 9ecf364..d74fa59 100644 --- a/src/EventSubscriber/SearchableSubscriber.php +++ b/src/EventSubscriber/SearchableListener.php @@ -4,7 +4,7 @@ declare(strict_types=1); namespace Pcm\SearchBundle\EventSubscriber; -use Pcm\SearchBundle\Entity\Interface\SearchableInterface; +use Pcm\SearchBundle\Interface\SearchableInterface; use Pcm\SearchBundle\Service\SearchService; use Doctrine\Bundle\DoctrineBundle\Attribute\AsDoctrineListener; use Doctrine\ORM\Event\PostPersistEventArgs; @@ -15,26 +15,20 @@ use Doctrine\ORM\Events; #[AsDoctrineListener(event: Events::postPersist)] #[AsDoctrineListener(event: Events::postUpdate)] #[AsDoctrineListener(event: Events::preRemove)] -class SearchableSubscriber +final class SearchableListener { - public function __construct(private SearchService $searchService) {} - - public function postUpdate(PostUpdateEventArgs $args): void + public function __construct(private SearchService $searchService) { - $entity = $args->getObject(); - - if ($entity instanceof SearchableInterface) { - $this->searchService->index($entity); - } } public function postPersist(PostPersistEventArgs $args): void { - $entity = $args->getObject(); + $this->reindex($args->getObject()); + } - if ($entity instanceof SearchableInterface) { - $this->searchService->index($entity); - } + public function postUpdate(PostUpdateEventArgs $args): void + { + $this->reindex($args->getObject()); } public function preRemove(PreRemoveEventArgs $args): void @@ -45,4 +39,11 @@ class SearchableSubscriber $this->searchService->unIndex($entity); } } + + private function reindex(object $entity): void + { + if ($entity instanceof SearchableInterface) { + $this->searchService->index($entity); + } + } }