From 0a6b134f23f71163e1b8167e831f92ce87ee5fdf Mon Sep 17 00:00:00 2001 From: Hugo Sales Date: Wed, 22 Jul 2020 01:54:01 +0000 Subject: [PATCH] [CORE] Refactor GNUsocial.php so it initializes itself as a service --- src/Core/GNUsocial.php | 47 ++++++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 22 deletions(-) diff --git a/src/Core/GNUsocial.php b/src/Core/GNUsocial.php index 2f4c423709..145c8fc9ab 100644 --- a/src/Core/GNUsocial.php +++ b/src/Core/GNUsocial.php @@ -59,29 +59,34 @@ use Symfony\Contracts\Translation\TranslatorInterface; class GNUsocial implements EventSubscriberInterface { - protected LoggerInterface $logger; - protected TranslatorInterface $translator; - protected EntityManagerInterface $entity_manager; - protected RouterInterface $router; - protected FormFactoryInterface $form_factory; - protected MessageBusInterface $message_bus; + protected LoggerInterface $logger; + protected TranslatorInterface $translator; + protected EntityManagerInterface $entity_manager; + protected RouterInterface $router; + protected FormFactoryInterface $form_factory; + protected MessageBusInterface $message_bus; + protected EventDispatcherInterface $event_dispatcher; /** * Symfony dependency injection gives us access to these services */ public function __construct(LoggerInterface $logger, - TranslatorInterface $translator, + TranslatorInterface $trans, EntityManagerInterface $em, RouterInterface $router, FormFactoryInterface $ff, - MessageBusInterface $message_bus) + MessageBusInterface $mb, + EventDispatcherInterface $ed) { - $this->logger = $logger; - $this->translator = $translator; - $this->entity_manager = $em; - $this->router = $router; - $this->form_factory = $ff; - $this->message_bus = $message_bus; + $this->logger = $logger; + $this->translator = $trans; + $this->entity_manager = $em; + $this->router = $router; + $this->form_factory = $ff; + $this->message_bus = $mb; + $this->event_dispatcher = $ed; + + $this->register(); } /** @@ -89,10 +94,10 @@ class GNUsocial implements EventSubscriberInterface * * @param EventDispatcherInterface $event_dispatcher */ - public function register(EventDispatcherInterface $event_dispatcher): void + public function register(): void { Log::setLogger($this->logger); - Event::setDispatcher($event_dispatcher); + Event::setDispatcher($this->event_dispatcher); I18n::setTranslator($this->translator); DB::setManager($this->entity_manager); Router::setRouter($this->router); @@ -115,10 +120,9 @@ class GNUsocial implements EventSubscriberInterface * @return RequestEvent */ public function onKernelRequest(RequestEvent $event, - string $event_name, - EventDispatcherInterface $event_dispatcher): RequestEvent + string $event_name): RequestEvent { - $this->register($event_dispatcher); + $this->register(); return $event; } @@ -132,10 +136,9 @@ class GNUsocial implements EventSubscriberInterface * @return ConsoleCommandEvent */ public function onCommand(ConsoleCommandEvent $event, - string $event_name, - EventDispatcherInterface $event_dispatcher): ConsoleCommandEvent + string $event_name): ConsoleCommandEvent { - $this->register($event_dispatcher); + $this->register(); return $event; }