/**
* {@inheritdoc}
*/
public function checkNamedRoute($route_name, array
$parameters =
[], AccountInterface
$account = NULL,
$return_as_object = FALSE
) { try { $route =
$this->routeProvider->
getRouteByName($route_name);
// ParamConverterManager relies on the route name and object being
// available from the parameters array.
$parameters[RouteObjectInterface::ROUTE_NAME
] =
$route_name;
$parameters[RouteObjectInterface::ROUTE_OBJECT
] =
$route;
$upcasted_parameters =
$this->paramConverterManager->
convert($parameters +
$route->
getDefaults());
$route_match =
new RouteMatch($route_name,
$route,
$upcasted_parameters,
$parameters);
return $this->
check($route_match,
$account, NULL,
$return_as_object);
} catch (RouteNotFoundException
$e) { // Cacheable until extensions change.
$result = AccessResult::
forbidden()->
addCacheTags(['config:core.extension'
]);
return $return_as_object ?
$result :
$result->
isAllowed();
} catch (ParamNotConvertedException
$e) { // Uncacheable because conversion of the parameter may not have been