src/EventSubscriber/MscEventSubscriber.php line 57

Open in your IDE?
  1. <?php
  2. namespace App\EventSubscriber;
  3. use App\Event\MSC\MscActivityAddedEvent;
  4. use App\Event\MSC\MscActivityCommentEvent;
  5. use App\Event\MSC\MscActivityCompletedEvent;
  6. use App\Event\MSC\MscActivityRemovedEvent;
  7. use App\Event\MSC\MscActivityUncompletedEvent;
  8. use App\Event\MSC\MscActivityUpdatedEvent;
  9. use App\Event\MSC\MscApprovedEvent;
  10. use App\Event\MSC\MscBaseEvent;
  11. use App\Event\MSC\MscCompletedEvent;
  12. use App\Event\MSC\MscCreatedEvent;
  13. use App\Event\MSC\MscCycleOpenedEvent;
  14. use App\Event\MSC\MscCycleRestoredEvent;
  15. use App\Event\MSC\MscDeniedEvent;
  16. use App\Event\MSC\MscObjectiveLinkedEvent;
  17. use App\Event\MSC\MscObjectiveUnlinkedEvent;
  18. use App\Event\MSC\MscRequestApprovalEvent;
  19. use App\Event\MSC\MscSkippedEvent;
  20. use Psr\Container\ContainerInterface;
  21. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  22. class MscEventSubscriber implements EventSubscriberInterface
  23. {
  24.     /** @var ContainerInterface */
  25.     private $container;
  26.     public function __construct(ContainerInterface $container)
  27.     {
  28.         $this->container $container;
  29.     }
  30.     public static function getSubscribedEvents()
  31.     {
  32.         return [
  33.             MscCreatedEvent::class => 'logEvent',
  34.             MscApprovedEvent::class => 'logEvent',
  35.             MscCompletedEvent::class => 'logEvent',
  36.             MscDeniedEvent::class => 'logEvent',
  37.             MscActivityAddedEvent::class => 'logEvent',
  38.             MscActivityRemovedEvent::class => 'logEvent',
  39.             MscActivityCommentEvent::class => 'logEvent',
  40.             MscActivityCompletedEvent::class => 'logEvent',
  41.             MscActivityUncompletedEvent::class => 'logEvent',
  42.             MscCycleRestoredEvent::class => 'logEvent',
  43.             MscSkippedEvent::class => 'logEvent',
  44.             MscObjectiveLinkedEvent::class => 'logEvent',
  45.             MscObjectiveUnlinkedEvent::class => 'logEvent',
  46.             MscRequestApprovalEvent::class => 'logEvent',
  47.             MscActivityUpdatedEvent::class => 'logEvent',
  48.             MscCycleOpenedEvent::class => 'logEvent',
  49.         ];
  50.     }
  51.     public function logEvent(MscBaseEvent $event)
  52.     {
  53.         $this->container->get('monolog.logger.event_log')->info("", [
  54.             'name' => $event::NAME,
  55.             'entity' => $event->getObject(),
  56.             'oldEntity'=> $event->getPreviousObject(),
  57.             'extra' => $event->getExtra()
  58.         ]);
  59.     }
  60. }