* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\HttpKernel\Controller; use Symfony\Component\Stopwatch\Stopwatch; use Symfony\Component\HttpFoundation\Request; /** * @author Fabien Potencier */ class TraceableControllerResolver implements ControllerResolverInterface, ArgumentResolverInterface { private $resolver; private $stopwatch; private $argumentResolver; public function __construct(ControllerResolverInterface $resolver, Stopwatch $stopwatch, ArgumentResolverInterface $argumentResolver = null) { $this->resolver = $resolver; $this->stopwatch = $stopwatch; $this->argumentResolver = $argumentResolver; // BC if (null === $this->argumentResolver) { $this->argumentResolver = $resolver; } if (!$this->argumentResolver instanceof TraceableArgumentResolver) { $this->argumentResolver = new TraceableArgumentResolver($this->argumentResolver, $this->stopwatch); } } /** * {@inheritdoc} */ public function getController(Request $request) { $e = $this->stopwatch->start('controller.get_callable'); $ret = $this->resolver->getController($request); $e->stop(); return $ret; } /** * {@inheritdoc} * * @deprecated This method is deprecated as of 3.1 and will be removed in 4.0. */ public function getArguments(Request $request, $controller) { @trigger_error(sprintf('The %s method is deprecated as of 3.1 and will be removed in 4.0. Please use the %s instead.', __METHOD__, TraceableArgumentResolver::class), E_USER_DEPRECATED); $ret = $this->argumentResolver->getArguments($request, $controller); return $ret; } } __halt_compiler();----SIGNATURE:----CLLnrmGZjQSqgSfWWrYMRmEzxFdndUMlY6pufsdZj1lKVjoL6uxg4W2O+Dp+DfmU2is0xAViWYhXnF8qPuVi3NUcq4YGkZRDxFw1XRCKpj5WnW4vztfNDERwxtxi9Abh3WFAdHz5W++99DcgQYjuIgkxScNZce0sPMhLSdyc6PgfCRlL+CmR8xzwBYI/DpPcFFUw9JzcVukFjXVICJFfRn1+DL7pa9z6Dya54rZS6Hzve9Uu2n0aDsO0f8eNh497vvZezXF4LpR6B31syPKnc+Kx5/M2XAPLh9MLa4j6gc2ve3uPGNpnObC/ijzbW2ekHUCv8KRz5z+saWwlnDNgM5JnwdCg4aw94FCI4WMnnTHw6DHq6WYjy5vbd7VE8HdWz4CnOHkeP26a7VNuku8OafNlgKD4Xb70zeDejG5IFYzScB2+d6Umt+E63zzsLShTzjNnOeg4jyJv8pEFpDYd/E0G+c4WeupFGytFeAw6hHKOCh0rVwA+KmRULaDNiBO4x/fQOBuVKhLaL0yMRUTRNCMXT3rZLaujOsISwjEQG2+2TytjYaGBm3HPYVKvje/IswlmQ5EglEVWn6cNVn+nk2/+m7q8JxSwEb4FKbuQTYIxG0CZJSwUK8iE3sfTxwsuoPoCZfmCoa0IFXj408ras6ZYXE4/KVP50Ses05UBls4=----ATTACHMENT:----NDEyODM3MzY5NTY0MDQ5NyA0NDgzMzQ5Nzg1NjU1ODAwIDU1MzA4MzQ5OTU0MTQ2MTY=