Skip to content

Commit

Permalink
use event_listener instead of event_subscriber (#2411)
Browse files Browse the repository at this point in the history
  • Loading branch information
Hanmac authored Aug 1, 2023
1 parent a17494a commit ba76151
Show file tree
Hide file tree
Showing 5 changed files with 48 additions and 2 deletions.
1 change: 1 addition & 0 deletions src/Listener/BaseMediaEventSubscriber.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@

/**
* @phpstan-template T of ObjectManager
* NEXT_MAJOR: do not implement EventSubscriber interface anymore
*/
abstract class BaseMediaEventSubscriber implements EventSubscriber
{
Expand Down
3 changes: 3 additions & 0 deletions src/Listener/ODM/MediaEventSubscriber.php
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,9 @@
*/
final class MediaEventSubscriber extends BaseMediaEventSubscriber
{
/**
* NEXT_MAJOR: remove this method.
*/
public function getSubscribedEvents(): array
{
return [
Expand Down
3 changes: 3 additions & 0 deletions src/Listener/ORM/MediaEventSubscriber.php
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,9 @@ public function __construct(
parent::__construct($pool);
}

/**
* NEXT_MAJOR: remove this method.
*/
public function getSubscribedEvents(): array
{
return [
Expand Down
20 changes: 19 additions & 1 deletion src/Resources/config/doctrine_mongodb.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

namespace Symfony\Component\DependencyInjection\Loader\Configurator;

use Doctrine\ODM\MongoDB\Events;
use Sonata\MediaBundle\Document\GalleryManager;
use Sonata\MediaBundle\Document\MediaManager;
use Sonata\MediaBundle\Generator\UuidGenerator;
Expand All @@ -38,7 +39,24 @@
->set('sonata.media.generator.default', UuidGenerator::class)

->set('sonata.media.doctrine.event_subscriber', MediaEventSubscriber::class)
->tag('doctrine_mongodb.odm.event_subscriber')
->tag('doctrine_mongodb.odm.event_listener', [
'event' => Events::prePersist,
])
->tag('doctrine_mongodb.odm.event_listener', [
'event' => Events::preUpdate,
])
->tag('doctrine_mongodb.odm.event_listener', [
'event' => Events::preRemove,
])
->tag('doctrine_mongodb.odm.event_listener', [
'event' => Events::postUpdate,
])
->tag('doctrine_mongodb.odm.event_listener', [
'event' => Events::postRemove,
])
->tag('doctrine_mongodb.odm.event_listener', [
'event' => Events::postPersist,
])
->args([
service('sonata.media.pool'),
]);
Expand Down
23 changes: 22 additions & 1 deletion src/Resources/config/doctrine_orm.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@

namespace Symfony\Component\DependencyInjection\Loader\Configurator;

use Doctrine\ORM\Events;
use Sonata\MediaBundle\Entity\GalleryManager;
use Sonata\MediaBundle\Entity\MediaManager;
use Sonata\MediaBundle\Generator\IdGenerator;
Expand All @@ -36,7 +37,27 @@
->set('sonata.media.generator.default', IdGenerator::class)

->set('sonata.media.doctrine.event_subscriber', MediaEventSubscriber::class)
->tag('doctrine.event_subscriber')
->tag('doctrine.event_listener', [
'event' => Events::prePersist,
])
->tag('doctrine.event_listener', [
'event' => Events::preUpdate,
])
->tag('doctrine.event_listener', [
'event' => Events::preRemove,
])
->tag('doctrine.event_listener', [
'event' => Events::postUpdate,
])
->tag('doctrine.event_listener', [
'event' => Events::postRemove,
])
->tag('doctrine.event_listener', [
'event' => Events::postPersist,
])
->tag('doctrine.event_listener', [
'event' => Events::onClear,
])
->args([
service('sonata.media.pool'),
service('sonata.media.manager.category')->nullOnInvalid(),
Expand Down

0 comments on commit ba76151

Please sign in to comment.