EventDataCollector.php in Zircon Profile 8
File
vendor/symfony/http-kernel/DataCollector/EventDataCollector.php
View source
<?php
namespace Symfony\Component\HttpKernel\DataCollector;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
use Symfony\Component\EventDispatcher\Debug\TraceableEventDispatcherInterface;
class EventDataCollector extends DataCollector implements LateDataCollectorInterface {
protected $dispatcher;
public function __construct(EventDispatcherInterface $dispatcher = null) {
$this->dispatcher = $dispatcher;
}
public function collect(Request $request, Response $response, \Exception $exception = null) {
$this->data = array(
'called_listeners' => array(),
'not_called_listeners' => array(),
);
}
public function lateCollect() {
if ($this->dispatcher instanceof TraceableEventDispatcherInterface) {
$this
->setCalledListeners($this->dispatcher
->getCalledListeners());
$this
->setNotCalledListeners($this->dispatcher
->getNotCalledListeners());
}
}
public function setCalledListeners(array $listeners) {
$this->data['called_listeners'] = $listeners;
}
public function getCalledListeners() {
return $this->data['called_listeners'];
}
public function setNotCalledListeners(array $listeners) {
$this->data['not_called_listeners'] = $listeners;
}
public function getNotCalledListeners() {
return $this->data['not_called_listeners'];
}
public function getName() {
return 'events';
}
}