* @copyright Since 2007 PrestaShop SA and Contributors * @license https://opensource.org/licenses/OSL-3.0 Open Software License (OSL 3.0) */ namespace PrestaShopBundle\Routing\Linter; use Symfony\Component\Routing\Route; use Symfony\Component\Routing\RouterInterface; /** * Get all configured routes for Back Office */ final class AdminRouteProvider { /** * @var RouterInterface */ private $router; /** * @param RouterInterface $router */ public function __construct(RouterInterface $router) { $this->router = $router; } /** * @return Route[] As routeName => route */ public function getRoutes() { $adminRoutes = []; foreach ($this->router->getRouteCollection() as $routeName => $route) { if (strpos($routeName, 'admin_') !== 0) { continue; } $adminRoutes[$routeName] = $route; } return $adminRoutes; } }