X7ROOT File Manager
Current Path:
/home/gfecatvj/sites/realesbar/vendor/symfony/http-kernel/EventListener
home
/
gfecatvj
/
sites
/
realesbar
/
vendor
/
symfony
/
http-kernel
/
EventListener
/
📁
..
📄
AbstractSessionListener.php
(7.68 KB)
📄
AbstractTestSessionListener.php
(3.54 KB)
📄
AddRequestFormatsListener.php
(1.2 KB)
📄
DebugHandlersListener.php
(6.9 KB)
📄
DisallowRobotsIndexingListener.php
(1.1 KB)
📄
DumpListener.php
(1.72 KB)
📄
ErrorListener.php
(5.24 KB)
📄
FragmentListener.php
(2.84 KB)
📄
LocaleAwareListener.php
(2.35 KB)
📄
LocaleListener.php
(2.54 KB)
📄
ProfilerListener.php
(3.97 KB)
📄
ResponseListener.php
(1.3 KB)
📄
RouterListener.php
(6.72 KB)
📄
SessionListener.php
(1.53 KB)
📄
StreamedResponseListener.php
(1.21 KB)
📄
SurrogateListener.php
(1.75 KB)
📄
TestSessionListener.php
(985 B)
📄
ValidateRequestListener.php
(1.18 KB)
Editing: ProfilerListener.php
<?php /* * This file is part of the Symfony package. * * (c) Fabien Potencier <fabien@symfony.com> * * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\HttpKernel\EventListener; use Symfony\Component\EventDispatcher\EventSubscriberInterface; use Symfony\Component\HttpFoundation\RequestMatcherInterface; use Symfony\Component\HttpFoundation\RequestStack; use Symfony\Component\HttpKernel\Event\ExceptionEvent; use Symfony\Component\HttpKernel\Event\ResponseEvent; use Symfony\Component\HttpKernel\Event\TerminateEvent; use Symfony\Component\HttpKernel\KernelEvents; use Symfony\Component\HttpKernel\Profiler\Profiler; /** * ProfilerListener collects data for the current request by listening to the kernel events. * * @author Fabien Potencier <fabien@symfony.com> * * @final */ class ProfilerListener implements EventSubscriberInterface { protected $profiler; protected $matcher; protected $onlyException; protected $onlyMasterRequests; protected $exception; protected $profiles; protected $requestStack; protected $parents; /** * @param bool $onlyException True if the profiler only collects data when an exception occurs, false otherwise * @param bool $onlyMasterRequests True if the profiler only collects data when the request is a master request, false otherwise */ public function __construct(Profiler $profiler, RequestStack $requestStack, RequestMatcherInterface $matcher = null, bool $onlyException = false, bool $onlyMasterRequests = false) { $this->profiler = $profiler; $this->matcher = $matcher; $this->onlyException = $onlyException; $this->onlyMasterRequests = $onlyMasterRequests; $this->profiles = new \SplObjectStorage(); $this->parents = new \SplObjectStorage(); $this->requestStack = $requestStack; } /** * Handles the onKernelException event. */ public function onKernelException(ExceptionEvent $event) { if ($this->onlyMasterRequests && !$event->isMasterRequest()) { return; } $this->exception = $event->getThrowable(); } /** * Handles the onKernelResponse event. */ public function onKernelResponse(ResponseEvent $event) { $master = $event->isMasterRequest(); if ($this->onlyMasterRequests && !$master) { return; } if ($this->onlyException && null === $this->exception) { return; } $request = $event->getRequest(); $exception = $this->exception; $this->exception = null; if (null !== $this->matcher && !$this->matcher->matches($request)) { return; } if (!$profile = $this->profiler->collect($request, $event->getResponse(), $exception)) { return; } $this->profiles[$request] = $profile; $this->parents[$request] = $this->requestStack->getParentRequest(); } public function onKernelTerminate(TerminateEvent $event) { // attach children to parents foreach ($this->profiles as $request) { if (null !== $parentRequest = $this->parents[$request]) { if (isset($this->profiles[$parentRequest])) { $this->profiles[$parentRequest]->addChild($this->profiles[$request]); } } } // save profiles foreach ($this->profiles as $request) { $this->profiler->saveProfile($this->profiles[$request]); } $this->profiles = new \SplObjectStorage(); $this->parents = new \SplObjectStorage(); } public static function getSubscribedEvents(): array { return [ KernelEvents::RESPONSE => ['onKernelResponse', -100], KernelEvents::EXCEPTION => ['onKernelException', 0], KernelEvents::TERMINATE => ['onKernelTerminate', -1024], ]; } }
Upload File
Create Folder