public function LazyRouteFilter::setFilters in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Routing/LazyRouteFilter.php \Drupal\Core\Routing\LazyRouteFilter::setFilters()
For each route, filter down the route collection.
Parameters
\Symfony\Component\Routing\RouteCollection $route_collection: A collection of routes to apply filter checks to.
File
- core/
lib/ Drupal/ Core/ Routing/ LazyRouteFilter.php, line 58 - Contains \Drupal\Core\Routing\LazyRouteFilter.
Class
- LazyRouteFilter
- A route filter which lazily loads route filters, depending on the route.
Namespace
Drupal\Core\RoutingCode
public function setFilters(RouteCollection $route_collection) {
/** @var \Symfony\Component\Routing\Route $route **/
foreach ($route_collection as $route) {
$service_ids = [];
foreach ($this
->getFilters() as $service_id => $filter) {
if ($filter instanceof RouteFilterInterface && $filter
->applies($route)) {
$service_ids[] = $service_id;
}
}
if ($service_ids) {
$route
->setOption('_route_filters', array_unique($service_ids));
}
}
}