Deprecated : Constant E_STRICT is deprecated in /home/pastorz/old-espace-client/vendor/symfony/error-handler/ErrorHandler.php on line 58
Deprecated : Constant E_STRICT is deprecated in /home/pastorz/old-espace-client/vendor/symfony/error-handler/ErrorHandler.php on line 76
Symfony Profiler
<?php
/*
* This file is part of the Symfony MakerBundle 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\Bundle\MakerBundle\Event ;
use Symfony\Bundle\MakerBundle\Exception\RuntimeCommandException ;
use Symfony\Component\Console\ConsoleEvents ;
use Symfony\Component\Console\Event\ConsoleErrorEvent ;
use Symfony\Component\Console\Event\ConsoleTerminateEvent ;
use Symfony\Component\Console\Style\SymfonyStyle ;
use Symfony\Component\EventDispatcher\EventSubscriberInterface ;
/**
* Prints certain exceptions in a pretty way and silences normal exception handling.
*
* @author Ryan Weaver <ryan@knpuniversity.com>
*/
final class ConsoleErrorSubscriber implements EventSubscriberInterface
{
private bool $setExitCode = false ;
public function onConsoleError ( ConsoleErrorEvent $event ): void
{
if (!$event -> getError () instanceof RuntimeCommandException ) {
return;
}
// prevent any visual logging from appearing
$event -> stopPropagation ();
// prevent the exception from actually being thrown
$event -> setExitCode ( 0 );
$this -> setExitCode = true ;
$io = new SymfonyStyle ( $event -> getInput (), $event -> getOutput ());
$io -> error ( $event -> getError ()-> getMessage ());
}
public function onConsoleTerminate ( ConsoleTerminateEvent $event ): void
{
if (!$this -> setExitCode ) {
return;
}
// finally set a non-zero exit code
$event -> setExitCode ( 1 );
}
public static function getSubscribedEvents (): array
{
return [
ConsoleEvents :: ERROR => 'onConsoleError' ,
ConsoleEvents :: TERMINATE => 'onConsoleTerminate' ,
];
}
}