TraceableControllerResolver

class TraceableControllerResolver implements ControllerResolverInterface, ArgumentResolverInterface

TraceableControllerResolver.

Methods

__construct(ControllerResolverInterface $resolver, Stopwatch $stopwatch, ArgumentResolverInterface $argumentResolver = null)

Constructor.

callable|false getController(Request $request)

Returns the Controller instance associated with a Request.

array getArguments(Request $request, callable $controller) deprecated

Returns the arguments to pass to the controller.

Details

__construct(ControllerResolverInterface $resolver, Stopwatch $stopwatch, ArgumentResolverInterface $argumentResolver = null)

Constructor.

Parameters

ControllerResolverInterface $resolver A ControllerResolverInterface instance
Stopwatch $stopwatch A Stopwatch instance
ArgumentResolverInterface $argumentResolver Only required for BC

callable|false getController(Request $request)

Returns the Controller instance associated with a Request.

As several resolvers can exist for a single application, a resolver must return false when it is not able to determine the controller.

The resolver must only throw an exception when it should be able to load controller but cannot because of some errors made by the developer.

Parameters

Request $request A Request instance

Return Value

callable|false A PHP callable representing the Controller, or false if this resolver is not able to determine the controller

Exceptions

LogicException If the controller can't be found

array getArguments(Request $request, callable $controller) deprecated

deprecated

This method is deprecated as of 3.1 and will be removed in 4.0.

Returns the arguments to pass to the controller.

Parameters

Request $request A Request instance
callable $controller A PHP callable

Return Value

array An array of arguments to pass to the controller

Exceptions

RuntimeException When value for argument given is not provided