aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/phpbb/event/extension_subscriber_loader.php
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/phpbb/event/extension_subscriber_loader.php')
-rw-r--r--phpBB/phpbb/event/extension_subscriber_loader.php28
1 files changed, 8 insertions, 20 deletions
diff --git a/phpBB/phpbb/event/extension_subscriber_loader.php b/phpBB/phpbb/event/extension_subscriber_loader.php
index ab50a589fe..6408f93e2a 100644
--- a/phpBB/phpbb/event/extension_subscriber_loader.php
+++ b/phpBB/phpbb/event/extension_subscriber_loader.php
@@ -9,39 +9,27 @@
namespace phpbb\event;
-/**
-* @ignore
-*/
-if (!defined('IN_PHPBB'))
-{
- exit;
-}
-
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
class extension_subscriber_loader
{
private $dispatcher;
- private $extension_manager;
+ private $listener_collection;
- public function __construct(EventDispatcherInterface $dispatcher, \phpbb\extension\manager $extension_manager)
+ public function __construct(EventDispatcherInterface $dispatcher, \phpbb\di\service_collection $listener_collection)
{
$this->dispatcher = $dispatcher;
- $this->extension_manager = $extension_manager;
+ $this->listener_collection = $listener_collection;
}
public function load()
{
- $finder = $this->extension_manager->get_finder();
- $subscriber_classes = $finder
- ->extension_directory('/event')
- ->core_path('event/')
- ->get_classes();
-
- foreach ($subscriber_classes as $class)
+ if (!empty($this->listener_collection))
{
- $subscriber = new $class();
- $this->dispatcher->addSubscriber($subscriber);
+ foreach ($this->listener_collection as $listener)
+ {
+ $this->dispatcher->addSubscriber($listener);
+ }
}
}
}